2206
редагувань
Admin (обговорення | внесок) Немає опису редагування Мітка: Очищення |
Admin (обговорення | внесок) (login v2.31: відновлення після випадкового empty-сейву (повертаю v2.30)) Мітка: Ручний відкіт |
||
| Рядок 1: | Рядок 1: | ||
@import url('https://fonts.googleapis.com/css2?family=Manrope:wght@400;600;800&display=swap'); | |||
/* Жорстка заборона Chrome Android Auto-Dark / Force Dark — сайт лише світлий */ | |||
:root { color-scheme: only light; } | |||
html { background-color: #ffffff; color-scheme: only light; } | |||
body { background-color: #ffffff; } | |||
@media (prefers-color-scheme: dark) { | |||
/* Сигнал браузеру: ми НЕ підтримуємо темну тему (та не намагайся її форсити) */ | |||
:root { color-scheme: only light !important; } | |||
html, body { background-color: #ffffff !important; } | |||
} | |||
/* Place card — vertical layout (image top, body below) */ | |||
.place-card { | |||
display: flex; | |||
flex-direction: column; | |||
background: #fff; | |||
border: 1px solid #eef1f6; | |||
border-radius: 14px; | |||
overflow: hidden; | |||
box-shadow: 0 1px 2px rgba(0,0,0,.03), 0 1px 8px rgba(0,0,0,.04); | |||
transition: transform .15s ease, box-shadow .15s ease; | |||
} | |||
.place-card:hover { | |||
transform: translateY(-2px); | |||
box-shadow: 0 2px 4px rgba(0,0,0,.04), 0 6px 18px rgba(0,0,0,.08); | |||
} | |||
.place-card__img { | |||
width: 100%; | |||
aspect-ratio: 16 / 10; | |||
overflow: hidden; | |||
background: #f5f7fb; | |||
} | |||
.place-card__img a, .place-card__img img { | |||
display: block; | |||
width: 100%; | |||
height: 100%; | |||
object-fit: cover; | |||
} | |||
.place-card__body { padding: 14px 18px 18px; } | |||
.place-card__title { font-size: 17px; font-weight: 700; margin: 0 0 8px; line-height: 1.25; } | |||
.place-card__title a { color: #111827; text-decoration: none; } | |||
.place-card__title a:hover { color: #2a6df4; } | |||
.place-card__meta { font-size: 13px; color: #6b7280; margin: 0 0 10px; line-height: 1.5; } | |||
.place-card__desc { font-size: 14px; line-height: 1.5; color: #374151; } | |||
/* Grid: 2 columns desktop, 1 column mobile */ | |||
.places-grid { | |||
display: grid; | |||
grid-template-columns: repeat(2, 1fr); | |||
gap: 18px; | |||
margin: 16px 0; | |||
} | |||
@media (max-width: 640px) { | |||
.places-grid { grid-template-columns: 1fr; } | |||
} | |||
/* Add-place button */ | |||
.add-place-btn{ text-align:center; margin:20px 0; } | |||
.add-place-btn a{ | |||
display:inline-block; background:#2a6df4; color:#fff !important; | |||
padding:10px 14px; border-radius:8px; text-decoration:none; | |||
font-weight:600; box-shadow:0 1px 2px rgba(0,0,0,.12); | |||
} | |||
.add-place-btn a:hover{ background:#1f57c2; } | |||
/* Banner image — responsive (full width on mobile, native on desktop) */ | |||
.banner-wrapper { width: 100%; } | |||
.banner-wrapper img, | |||
.banner-image img { max-width: 100%; height: auto; display: block; } | |||
/* Wikitable — clean style: no borders, cells separated by white gaps over light-gray fill */ | |||
.wikitable { | |||
background: transparent; | |||
border: 0; | |||
border-collapse: separate; | |||
border-spacing: 3px; | |||
margin: 1em 0; | |||
color: inherit; | |||
} | |||
.wikitable > * > tr > th, | |||
.wikitable > * > tr > td { | |||
background: #f5f7fb; | |||
border: 0; | |||
padding: 12px 16px; | |||
vertical-align: top; | |||
} | |||
.wikitable > * > tr > th { | |||
background: #e8eef7; | |||
font-weight: 600; | |||
text-align: left; | |||
} | |||
/* PageForms — Place form: card layout, modern inputs */ | |||
.pf-place-form { max-width: 720px; margin: 0 auto; } | |||
#pfForm { background: #fff; } | |||
#pfForm .pf-place-form h2 { | |||
font-size: 12px; text-transform: uppercase; letter-spacing: 0.8px; | |||
color: #6b7280; font-weight: 600; margin: 28px 0 12px; | |||
padding-bottom: 6px; border-bottom: 1px solid #e8eef7; | |||
} | |||
#pfForm .pf-place-form h2:first-child { margin-top: 0; } | |||
#pfForm dl { margin: 0 0 16px; } | |||
#pfForm dt { font-size: 13px; color: #374151; font-weight: 600; margin-bottom: 6px; } | |||
#pfForm dt small { font-weight: 400; color: #9ca3af; margin-left: 4px; } | |||
#pfForm dd { margin: 0; } | |||
#pfForm .inputSpan { display: block; } | |||
#pfForm .createboxInput { | |||
width: 100%; max-width: 100%; box-sizing: border-box; | |||
padding: 10px 14px; font-size: 15px; line-height: 1.4; | |||
background: #fafbfd; border: 1px solid #eef1f6; border-radius: 8px; | |||
font-family: inherit; color: #111827; | |||
transition: border-color .15s, background .15s, box-shadow .15s; | |||
} | |||
#pfForm .createboxInput:focus { | |||
outline: none; background: #fff; border-color: #2a6df4; | |||
box-shadow: 0 0 0 3px rgba(42,109,244,0.15); | |||
} | |||
#pfForm .createboxInput::placeholder { color: #9ca3af; } | |||
#pfForm textarea { min-height: 110px; resize: vertical; } | |||
#pfForm .pfUploadable { | |||
display: inline-block; margin-top: 8px; font-size: 13px; | |||
color: #2a6df4; text-decoration: none; | |||
} | |||
#pfForm .pfUploadable:hover { text-decoration: underline; } | |||
/* coords row: keep Lat/Lon inputs side-by-side */ | |||
#pfForm .pf-coord-label { font-size: 13px; color: #6b7280; margin-right: 4px; } | |||
#pfForm dd:has(.pf-coord-label) .inputSpan { display: inline-block; width: auto; } | |||
#pfForm dd:has(.pf-coord-label) .createboxInput { width: 140px; display: inline-block; } | |||
#pfForm dd:has(.pf-coord-label) { display: flex; align-items: center; gap: 8px; flex-wrap: wrap; } | |||
/* Logo wordmark — Manrope font + tagline */ | |||
.mw-logo { align-items: center; gap: 7px; overflow: visible !important; } | |||
.mw-logo-icon { height: 43px !important; width: auto !important; flex-shrink: 0; } | |||
.mw-logo-container, | |||
.vector-header-start .mw-logo-container { | |||
display: inline-block; | |||
overflow: visible !important; | |||
max-width: none !important; | |||
width: auto !important; | |||
} | |||
.mw-logo-wordmark { | |||
font-family: 'Manrope', system-ui, -apple-system, sans-serif !important; | |||
font-weight: 700 !important; | |||
font-size: 24px !important; | |||
color: #1a2240 !important; | |||
letter-spacing: -0.015em; | |||
line-height: 1.1; | |||
display: block; | |||
white-space: nowrap; | |||
overflow: visible; | |||
} | |||
.mw-logo-container::after { | |||
content: 'вікіпедія для емігрантів'; | |||
display: block; | |||
font-family: 'Manrope', system-ui, sans-serif; | |||
font-size: 7px; | |||
font-weight: 600; | |||
letter-spacing: 0.16em; | |||
text-transform: uppercase; | |||
color: #4b5d8c; | |||
margin-top: 3px; | |||
white-space: nowrap; | |||
} | |||
/* Search input — restrained, encyclopedic */ | |||
.vector-search-box .cdx-search-input, | |||
.cdx-typeahead-search .cdx-search-input, | |||
form.cdx-search-input { | |||
border-radius: 999px !important; | |||
background: #f4f6fa !important; | |||
border: 1px solid transparent !important; | |||
box-shadow: none !important; | |||
transition: background 0.2s ease, border-color 0.2s ease; | |||
overflow: hidden; | |||
padding: 0 !important; | |||
} | |||
.vector-search-box .cdx-search-input:hover, | |||
.cdx-typeahead-search .cdx-search-input:hover, | |||
form.cdx-search-input:hover { | |||
background: #eef1f7 !important; | |||
} | |||
.vector-search-box .cdx-search-input:focus-within, | |||
.cdx-typeahead-search .cdx-search-input:focus-within, | |||
form.cdx-search-input:focus-within { | |||
background: #ffffff !important; | |||
border-color: #1a2240 !important; | |||
box-shadow: none !important; | |||
} | |||
.cdx-search-input .cdx-text-input, | |||
.cdx-typeahead-search .cdx-text-input { | |||
border: none !important; | |||
background: transparent !important; | |||
} | |||
.cdx-search-input .cdx-text-input__input, | |||
.cdx-typeahead-search .cdx-text-input__input { | |||
background: transparent !important; | |||
border: none !important; | |||
box-shadow: none !important; | |||
height: 38px !important; | |||
padding: 0 16px 0 36px !important; | |||
font-size: 14px !important; | |||
color: #1a2240 !important; | |||
} | |||
.cdx-search-input .cdx-text-input__input::placeholder, | |||
.cdx-typeahead-search .cdx-text-input__input::placeholder { | |||
color: #8b95ad !important; | |||
font-weight: 400; | |||
} | |||
.cdx-search-input .cdx-text-input__start-icon, | |||
.cdx-typeahead-search .cdx-text-input__start-icon { | |||
left: 12px !important; | |||
top: 50% !important; | |||
opacity: 0.5; | |||
transform: translateY(-50%) scale(0.8) !important; | |||
transform-origin: left center; | |||
} | |||
/* Ghost button — restrained */ | |||
.cdx-search-input .cdx-search-input__end-button, | |||
.cdx-typeahead-search .cdx-search-input__end-button { | |||
border-radius: 999px !important; | |||
background: transparent !important; | |||
color: #4b5d8c !important; | |||
border: none !important; | |||
padding: 0 16px !important; | |||
height: 38px !important; | |||
margin: 0 !important; | |||
font-weight: 500 !important; | |||
font-size: 13px !important; | |||
letter-spacing: 0; | |||
cursor: pointer; | |||
transition: background 0.15s ease, color 0.15s ease; | |||
} | |||
.cdx-search-input .cdx-search-input__end-button:hover, | |||
.cdx-typeahead-search .cdx-search-input__end-button:hover { | |||
background: #eef1f7 !important; | |||
color: #1a2240 !important; | |||
} | |||
/* Typeahead suggestions dropdown */ | |||
.cdx-typeahead-search .cdx-menu { | |||
border-radius: 14px !important; | |||
border: 1px solid #e3e7ef !important; | |||
box-shadow: 0 8px 24px rgba(15, 23, 42, 0.08) !important; | |||
margin-top: 6px !important; | |||
overflow: hidden; | |||
} | |||
.cdx-typeahead-search .cdx-menu-item:hover, | |||
.cdx-typeahead-search .cdx-menu-item--highlighted { | |||
background: #f4f6fa !important; | |||
} | |||
/* Hide TOC header "Зміст сховати" in left sidebar */ | |||
#mw-panel-toc .vector-toc-pinnable-header { display: none !important; } | |||
/* ============================================================ | |||
Page hero — повноширинний блок з заголовком на сторінках країн | |||
============================================================ | |||
Hero рендериться як position:absolute всередині .mw-page-container-inner, | |||
щоб не залежати від grid-колонок (mainMenu / pageContent). | |||
.mw-page-container-inner отримує padding-top на висоту hero, щоб | |||
контент починався під ним. | |||
Поки сірий фон. Щоб поставити зображення — заміни значення | |||
--page-hero-bg на url(...) (можна на конкретну країну). | |||
*/ | |||
:root { | |||
--page-hero-bg: #e8e8e8; | |||
--page-hero-fg: #1a2240; | |||
--page-hero-height: 500px; | |||
} | |||
/* Country-specific hero backgrounds */ | |||
body.page-🇷🇴_Румунія { | |||
--page-hero-bg: url("/resources/assets/hero/romania.png"); | |||
--page-hero-fg: #ffffff; | |||
} | |||
body:is(.page-🇷🇴_Румунія) .mw-page-container-inner { | |||
position: relative; | |||
padding-top: calc(var(--page-hero-height) + 24px); /* hero + top offset (12) + bottom gap (12) — симетрично */ | |||
} | |||
/* Прибрати весь верхній відступ TOC sidebar — pinnable-header ("Зміст" + кнопки) | |||
та дефолтні top-paddings на обгортках. */ | |||
.skin-vector-2022 .vector-toc-pinnable-header { | |||
display: none !important; | |||
} | |||
.skin-vector-2022 #mw-panel-toc, | |||
.skin-vector-2022 #vector-toc-pinned-container, | |||
.skin-vector-2022 #vector-toc { | |||
padding-top: 0 !important; | |||
margin-top: 0 !important; | |||
} | |||
/* Прибрати "Матеріал з Країнопедії" та інший pre-content шум, який створює | |||
асиметрію між верхнім (24px) і нижнім (виглядав ~70px) відступом hero. */ | |||
body:is(.page-🇷🇴_Румунія) .vector-body-before-content, | |||
body:is(.page-🇷🇴_Румунія) #contentSub { | |||
display: none !important; | |||
} | |||
body:is(.page-🇷🇴_Румунія) #mw-content-text > .mw-parser-output > :first-child { | |||
margin-top: 0 !important; | |||
} | |||
/* Vector-2022 додає власні top-paddings на content-обгортки — занулюємо | |||
щоб body-текст починався одразу під padding-top контейнера. */ | |||
body:is(.page-🇷🇴_Румунія) main#content.mw-body, | |||
body:is(.page-🇷🇴_Румунія) #bodyContent.vector-body, | |||
body:is(.page-🇷🇴_Румунія) #mw-content-text, | |||
body:is(.page-🇷🇴_Румунія) #mw-content-text > .mw-parser-output { | |||
padding-top: 0 !important; | |||
margin-top: 0 !important; | |||
} | |||
body:is(.page-🇷🇴_Румунія) .vector-page-titlebar { | |||
position: absolute; | |||
top: 12px; | |||
left: 0; | |||
right: 0; | |||
width: auto; | |||
height: var(--page-hero-height); | |||
margin: 0; | |||
padding: 0 32px; | |||
background: var(--page-hero-bg); | |||
background-size: cover; | |||
background-position: center; | |||
display: flex; | |||
align-items: center; | |||
justify-content: center; | |||
border-radius: 16px; | |||
box-sizing: border-box; | |||
z-index: 1; | |||
} | |||
body:is(.page-🇷🇴_Румунія) .vector-page-titlebar .firstHeading { | |||
text-align: center; | |||
font-size: 40px; | |||
font-weight: 700; | |||
color: var(--page-hero-fg); | |||
margin: 0; | |||
border: none; | |||
padding: 0; | |||
word-wrap: break-word; | |||
line-height: 1.2; | |||
} | |||
/* Mobile: коротший hero */ | |||
@media screen and (max-width: 720px) { | |||
body:is(.page-🇷🇴_Румунія) { | |||
--page-hero-height: 220px; | |||
} | |||
body:is(.page-🇷🇴_Румунія) .vector-page-titlebar { | |||
padding: 0 16px; | |||
} | |||
body:is(.page-🇷🇴_Румунія) .vector-page-titlebar .firstHeading { | |||
font-size: 28px; | |||
} | |||
} | |||
/* MinervaNeue — hero для сторінок країн (картинка + заголовок, 60vh, з боковими відступами). | |||
Верхній і нижній отступи рівні (12px). */ | |||
.skin-minerva.page-🇷🇴_Румунія .pre-content.heading-holder { | |||
position: relative; | |||
margin: 12px; | |||
padding: 0; | |||
height: 60vh; | |||
min-height: 280px; | |||
background-image: var(--page-hero-bg); | |||
background-size: cover; | |||
background-position: center; | |||
display: flex; | |||
align-items: center; | |||
justify-content: center; | |||
border-radius: 16px; | |||
overflow: hidden; | |||
} | |||
.skin-minerva.page-🇷🇴_Румунія .pre-content.heading-holder .page-heading { | |||
position: relative; | |||
z-index: 1; | |||
width: 100%; | |||
padding: 0 20px; | |||
text-align: center; | |||
} | |||
.skin-minerva.page-🇷🇴_Румунія .pre-content.heading-holder .firstHeading { | |||
font-family: "Manrope", sans-serif; | |||
font-size: 36px; | |||
font-weight: 700; | |||
color: var(--page-hero-fg, #ffffff); | |||
margin: 0; | |||
border: none; | |||
padding: 0; | |||
line-height: 1.15; | |||
text-shadow: 0 2px 12px rgba(0, 0, 0, 0.35); | |||
letter-spacing: -0.01em; | |||
} | |||
.skin-minerva.page-🇷🇴_Румунія .pre-content.heading-holder .tagline { | |||
display: none; | |||
} | |||
/* На зовсім малих екранах — трохи менший заголовок */ | |||
@media screen and (max-width: 360px) { | |||
.skin-minerva.page-🇷🇴_Румунія .pre-content.heading-holder .firstHeading { | |||
font-size: 30px; | |||
} | |||
} | |||
/* Page Tools (Інструменти, правий sidebar) — закріплено назавжди. | |||
Ховаємо кнопки pin/unpin і примусово показуємо sidebar навіть якщо | |||
у юзера збережений unpinned стан в preferences/куках. */ | |||
[data-event-name^="pinnable-header.vector-page-tools."] { | |||
display: none !important; | |||
} | |||
/* Сховати tabs "Обговорення" і "Головна" з UI */ | |||
#ca-talk, #ca-nstab-main { display: none !important; } | |||
/* "Обговорення" в персональному меню (User_talk:current_user) */ | |||
#pt-mytalk { display: none !important; } | |||
/* Sticky header (з'являється при скролі) — дублі іконок талку та watch-зірки */ | |||
#ca-talk-sticky-header, | |||
#ca-watchstar-sticky-header { display: none !important; } | |||
/* Toolbar (Читати / Редагувати / ...) переміщається JS всередину hero | |||
і ставиться на 24px від нижнього краю, по центру */ | |||
body:is(.page-🇷🇴_Румунія) .vector-page-titlebar .vector-page-toolbar { | |||
position: absolute; | |||
bottom: 24px; | |||
left: 0; | |||
right: 0; | |||
z-index: 2; | |||
margin: 0; | |||
padding: 0 24px; | |||
display: flex; | |||
justify-content: center; | |||
} | |||
body:is(.page-🇷🇴_Румунія) .vector-page-titlebar .vector-page-toolbar-container { | |||
width: auto !important; | |||
display: flex !important; | |||
justify-content: center !important; | |||
gap: 24px; | |||
} | |||
body:is(.page-🇷🇴_Румунія) .vector-page-titlebar .vector-page-toolbar a { | |||
color: #ffffff !important; | |||
text-shadow: 0 1px 2px rgba(0, 0, 0, 0.4); | |||
} | |||
/* Прибрати суцільну горизонтальну лінію під toolbar (box-shadow Vector), | |||
лишається лише підкреслення активної вкладки */ | |||
body:is(.page-🇷🇴_Румунія) .vector-page-titlebar .vector-page-toolbar-container { | |||
box-shadow: none !important; | |||
} | |||
/* Сховати dropdown "Інструменти" і зірочку (watch) з toolbar — глобально. | |||
В toolbar це #vector-page-tools-dropdown (НЕ #p-cactions, той — "Більше опцій"). | |||
Також ховаємо правий sticky-rail "Інструменти". */ | |||
.skin-vector-2022 #vector-page-tools-dropdown, | |||
.skin-vector-2022 .vector-page-tools-landmark, | |||
.skin-vector-2022 #p-cactions, | |||
.skin-vector-2022 #ca-watch, | |||
.skin-vector-2022 #ca-unwatch { | |||
display: none !important; | |||
} | |||
/* === Service cards (грід для Послуг — клінінг, переклад, доставка тощо) === */ | |||
.services-grid { | |||
display: grid; | |||
grid-template-columns: repeat(2, 1fr); | |||
gap: 18px; | |||
margin: 16px 0; | |||
} | |||
@media (max-width: 640px) { | |||
.services-grid { grid-template-columns: 1fr; } | |||
} | |||
.service-card { | |||
box-sizing: border-box; | |||
display: flex; | |||
flex-direction: column; | |||
background: #fff; | |||
border: 1px solid #eef1f6; | |||
border-radius: 14px; | |||
overflow: hidden; | |||
box-shadow: 0 1px 2px rgba(0,0,0,.03), 0 1px 8px rgba(0,0,0,.04); | |||
transition: transform .15s ease, box-shadow .15s ease; | |||
} | |||
.service-card:hover { | |||
transform: translateY(-2px); | |||
box-shadow: 0 2px 4px rgba(0,0,0,.04), 0 6px 18px rgba(0,0,0,.08); | |||
} | |||
.service-card__body { padding: 16px 20px 18px; } | |||
.service-card__title { | |||
font-size: 17px; | |||
font-weight: 700; | |||
margin: 0 0 8px; | |||
line-height: 1.25; | |||
} | |||
.service-card__title a { color: #111827; text-decoration: none; } | |||
.service-card__title a:hover { color: #2a6df4; } | |||
.service-card__desc { | |||
font-size: 14px; | |||
line-height: 1.5; | |||
color: #374151; | |||
margin-bottom: 12px; | |||
} | |||
.service-card__meta { | |||
display: flex; | |||
flex-direction: column; | |||
gap: 4px; | |||
font-size: 13px; | |||
color: #4b5563; | |||
border-top: 1px solid #f3f4f6; | |||
padding-top: 10px; | |||
} | |||
.service-card__row { | |||
line-height: 1.5; | |||
padding-left: 22px; | |||
background-repeat: no-repeat; | |||
background-position: 0 4px; | |||
background-size: 14px 14px; | |||
} | |||
.service-card__row a { color: #2a6df4; text-decoration: none; } | |||
.service-card__row a:hover { text-decoration: underline; } | |||
/* SVG-іконки (Heroicons solid, fill #4b5563, URL-encoded) */ | |||
.service-card__row--phone { | |||
background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20viewBox%3D%270%200%2024%2024%27%20fill%3D%27%234b5563%27%3E%3Cpath%20fill-rule%3D%27evenodd%27%20d%3D%27M1.5%204.5a3%203%200%200%201%203-3h1.372c.86%200%201.61.586%201.819%201.42l1.105%204.423a1.875%201.875%200%200%201-.694%201.955l-1.293.97c-.135.101-.164.249-.126.352a11.285%2011.285%200%200%200%206.197%206.197c.103.038.25.009.352-.126l.97-1.293a1.875%201.875%200%200%201%201.955-.694l4.423%201.105c.834.209%201.42.959%201.42%201.82V19.5a3%203%200%200%201-3%203h-2.25C8.552%2022.5%201.5%2015.448%201.5%206.75V4.5z%27%20clip-rule%3D%27evenodd%27%2F%3E%3C%2Fsvg%3E"); | |||
} | |||
.service-card__row--telegram { | |||
background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20viewBox%3D%270%200%2024%2024%27%20fill%3D%27%234b5563%27%3E%3Cpath%20d%3D%27M3.478%202.405a.75.75%200%200%200-.926.94l2.432%207.905H13.5a.75.75%200%200%201%200%201.5H4.984l-2.432%207.905a.75.75%200%200%200%20.926.94%2060.519%2060.519%200%200%200%2018.445-8.986.75.75%200%200%200%200-1.218A60.517%2060.517%200%200%200%203.478%202.405z%27%2F%3E%3C%2Fsvg%3E"); | |||
} | |||
.service-card__row--languages { | |||
background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20viewBox%3D%270%200%2024%2024%27%20fill%3D%27%234b5563%27%3E%3Cpath%20fill-rule%3D%27evenodd%27%20d%3D%27M9%202.25a.75.75%200%200%201%20.75.75v1.506a49.38%2049.38%200%200%201%205.343.371.75.75%200%201%201-.186%201.489c-.66-.083-1.323-.151-1.99-.206a18.67%2018.67%200%200%201-2.969%206.323c.317.384.65.753.998%201.107a.75.75%200%201%201-1.07%201.052A18.902%2018.902%200%200%201%209%2013.687a18.823%2018.823%200%200%201-5.656%204.482.75.75%200%201%201-.688-1.333%2017.323%2017.323%200%200%200%205.396-4.353A18.72%2018.72%200%200%201%205.89%208.598a.75.75%200%200%201%201.388-.568A17.21%2017.21%200%200%200%209%2011.224a17.17%2017.17%200%200%200%202.391-5.165%2048.038%2048.038%200%200%200-8.298.307.75.75%200%200%201-.186-1.489%2049.159%2049.159%200%200%201%205.343-.371V3A.75.75%200%200%201%209%202.25zM15.75%209a.75.75%200%200%201%20.68.433l5.25%2011.25a.75.75%200%201%201-1.36.634l-1.198-2.567h-6.744l-1.198%202.567a.75.75%200%200%201-1.36-.634l5.25-11.25A.75.75%200%200%201%2015.75%209zm-2.672%208.25h5.344l-2.672-5.726-2.672%205.726z%27%20clip-rule%3D%27evenodd%27%2F%3E%3C%2Fsvg%3E"); | |||
} | |||
.service-card__row--website { | |||
background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20viewBox%3D%270%200%2024%2024%27%20fill%3D%27%234b5563%27%3E%3Cpath%20fill-rule%3D%27evenodd%27%20d%3D%27M12%202.25c-5.385%200-9.75%204.365-9.75%209.75s4.365%209.75%209.75%209.75%209.75-4.365%209.75-9.75S17.385%202.25%2012%202.25zM4.575%2015.6a8.25%208.25%200%200%200%209.348%204.425%201.966%201.966%200%200%200-1.84-1.275.983.983%200%200%201-.97-.822l-.073-.437c-.094-.565.25-1.11.8-1.267l.99-.282c.427-.123.783-.418.982-.816l.036-.073a1.453%201.453%200%200%201%202.328-.377L16.5%2015h.628a2.25%202.25%200%200%201%201.983%201.186%208.25%208.25%200%200%200-6.345-12.4c.044.262.18.503.389.676l1.068.89c.442.369.535%201.01.216%201.49l-.51.766a2.25%202.25%200%200%201-1.161.886l-.143.048a1.107%201.107%200%200%200-.57%201.664c.369.555.169%201.307-.427%201.605L9%2013.125l.423%201.059a.956.956%200%200%201-1.652.928l-.679-.906a1.125%201.125%200%200%200-1.906.143l-.476.952a.992.992%200%200%201-.785.572l-.504.054z%27%20clip-rule%3D%27evenodd%27%2F%3E%3C%2Fsvg%3E"); | |||
} | |||
/* CTA-картка "Я виконавець, додати себе" — як service-card, але з пунктирною рамкою */ | |||
.service-card--cta { | |||
align-items: center; | |||
justify-content: center; | |||
text-align: center; | |||
background: #f8fafc; | |||
border: 2px dashed #cbd5e1; | |||
box-shadow: none; | |||
color: #4b5563; | |||
text-decoration: none; | |||
padding: 16px 20px 18px; | |||
transition: border-color .15s, background .15s, color .15s, transform .15s; | |||
} | |||
.service-card--cta:hover { | |||
border-color: #2a6df4; | |||
background: #f0f6ff; | |||
color: #2a6df4; | |||
transform: translateY(-2px); | |||
box-shadow: none; | |||
text-decoration: none; | |||
} | |||
.service-card--cta__plus { | |||
width: 36px; | |||
height: 36px; | |||
border-radius: 50%; | |||
background: #fff; | |||
border: 1.5px solid currentColor; | |||
display: flex; | |||
align-items: center; | |||
justify-content: center; | |||
font-size: 22px; | |||
line-height: 1; | |||
margin: 0 auto 10px; | |||
} | |||
.service-card--cta__title { | |||
display: block; | |||
font-weight: 600; | |||
font-size: 15px; | |||
color: inherit; | |||
} | |||
.service-card--cta__hint { | |||
display: block; | |||
font-size: 12px; | |||
color: #6b7280; | |||
margin-top: 4px; | |||
} | |||
.service-card--cta:hover .service-card--cta__hint { color: inherit; opacity: .85; } | |||
/* extlink-обгортка навколо CTA-картки має заповнити висоту cargo-картки */ | |||
.services-grid > a { | |||
display: flex; | |||
text-decoration: none; | |||
color: inherit; | |||
} | |||
.services-grid > a:hover { text-decoration: none; } | |||
.services-grid > a > .service-card--cta { | |||
flex: 1; | |||
width: 100%; | |||
display: flex; | |||
flex-direction: column; | |||
} | |||
/* Прибираємо стрілочку external link зі всіх <a> у грідах послуг */ | |||
.services-grid > a.external { | |||
background-image: none !important; | |||
padding-right: 0 !important; | |||
} | |||
/* Гарантія однакової висоти CTA-картки і звичайних cargo-карток */ | |||
.services-grid { align-items: stretch; } | |||
.services-grid > a { box-sizing: border-box; align-self: stretch; } | |||
.services-grid > a > .service-card--cta { box-sizing: border-box; } | |||
/* Mobile (MinervaNeue) — лого + назва сайту в шапці */ | |||
.skin-minerva .branding-box a { | |||
display: inline-flex; | |||
align-items: center; | |||
gap: 8px; | |||
text-decoration: none; | |||
color: inherit; | |||
} | |||
.skin-minerva .branding-box span img { | |||
width: auto; | |||
height: 28px; | |||
display: block; | |||
} | |||
.skin-minerva .branding-box span::after { | |||
content: "Країнопедія"; | |||
font-family: "Manrope", sans-serif; | |||
font-weight: 600; | |||
font-size: 17px; | |||
color: #1a2240; | |||
white-space: nowrap; | |||
} | |||
.skin-minerva .branding-box span { | |||
display: inline-flex; | |||
align-items: center; | |||
gap: 8px; | |||
} | |||
/* MinervaNeue — секція "Міста" у бургер-drawer (нашого Common.js) */ | |||
.skin-minerva .cities-drawer-section { | |||
border-top: 1px solid #eaecf0; | |||
margin-top: 8px; | |||
} | |||
.skin-minerva .cities-drawer-section__heading { | |||
margin: 0; | |||
padding: 14px 16px 6px; | |||
font-family: inherit; | |||
font-size: 12px; | |||
font-weight: 700; | |||
color: #72777d; | |||
text-transform: uppercase; | |||
letter-spacing: 0.06em; | |||
border: none; | |||
background: transparent; | |||
} | |||
.skin-minerva .cities-drawer-section__list { | |||
margin: 0; | |||
padding: 0; | |||
list-style: none; | |||
} | |||
.skin-minerva .cities-drawer-item .toggle-list-item__anchor { | |||
display: flex; | |||
align-items: center; | |||
gap: 12px; | |||
padding: 10px 16px; | |||
text-decoration: none; | |||
color: #202122; | |||
font-size: 16px; | |||
} | |||
.skin-minerva .cities-drawer-item .toggle-list-item__label { | |||
flex: 1; | |||
} | |||
.skin-minerva .cities-drawer-item__icon { | |||
width: 20px; | |||
height: 20px; | |||
background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20viewBox%3D%270%200%2024%2024%27%20fill%3D%27%2354595d%27%3E%3Cpath%20fill-rule%3D%27evenodd%27%20d%3D%27M11.54%2022.351l.07.04.028.016a.76.76%200%2000.723%200l.028-.015.071-.041a16.975%2016.975%200%20001.144-.742%2019.58%2019.58%200%20002.683-2.282c1.944-1.99%203.963-4.98%203.963-8.827a8.25%208.25%200%2000-16.5%200c0%203.846%202.02%206.837%203.963%208.827a19.58%2019.58%200%20002.682%202.282%2016.975%2016.975%200%20001.145.742zM12%2013.5a3%203%200%20100-6%203%203%200%20000%206z%27%20clip-rule%3D%27evenodd%27%2F%3E%3C%2Fsvg%3E"); | |||
background-repeat: no-repeat; | |||
background-position: center; | |||
background-size: 18px 18px; | |||
flex-shrink: 0; | |||
} | |||
/* Неіснуюча сторінка міста — приглушений колір + знак + */ | |||
.skin-minerva .cities-drawer-item--missing .toggle-list-item__label { | |||
color: #9aa0a6; | |||
} | |||
.skin-minerva .cities-drawer-item--missing .cities-drawer-item__icon { | |||
opacity: 0.45; | |||
} | |||
.skin-minerva .cities-drawer-item--missing .toggle-list-item__anchor::after { | |||
content: "+"; | |||
margin-left: auto; | |||
color: #9aa0a6; | |||
font-size: 22px; | |||
line-height: 1; | |||
font-weight: 400; | |||
} | |||
/* MinervaNeue — кнопка "Увійти" виділена як CTA */ | |||
.skin-minerva #p-personal { padding: 6px 12px; } | |||
.skin-minerva #p-personal .toggle-list-item { | |||
margin: 0; | |||
} | |||
.skin-minerva #p-personal .toggle-list-item__anchor { | |||
display: flex; | |||
align-items: center; | |||
gap: 12px; | |||
background: #f84840; | |||
color: #ffffff !important; | |||
border-radius: 10px; | |||
padding: 12px 14px; | |||
font-weight: 600; | |||
box-shadow: 0 2px 6px rgba(248, 72, 64, 0.25); | |||
transition: background .15s, box-shadow .15s, transform .1s; | |||
} | |||
.skin-minerva #p-personal .toggle-list-item__anchor:hover, | |||
.skin-minerva #p-personal .toggle-list-item__anchor:active { | |||
background: #e63a32; | |||
color: #ffffff !important; | |||
box-shadow: 0 3px 8px rgba(248, 72, 64, 0.35); | |||
} | |||
.skin-minerva #p-personal .toggle-list-item__label { | |||
color: #ffffff; | |||
} | |||
/* Зробити іконку білою (вона SVG-mask на background-image) */ | |||
.skin-minerva #p-personal .minerva-icon { | |||
filter: brightness(0) invert(1); | |||
} | |||
/* MinervaNeue — прибрати вбудоване "Домашня"/"Випадкова" з drawer */ | |||
.skin-minerva #p-navigation { | |||
display: none; | |||
} | |||
/* MinervaNeue — верхня менюшка без сірого фону */ | |||
.skin-minerva .header-container, | |||
.skin-minerva .header-container.header-chrome, | |||
.skin-minerva .minerva-header { | |||
background: #ffffff !important; | |||
border-bottom: none !important; | |||
box-shadow: none !important; | |||
} | |||
/* MinervaNeue — прибрати порожній banner-container/siteNotice над hero */ | |||
.skin-minerva .banner-container:empty, | |||
.skin-minerva #siteNotice:empty { | |||
display: none; | |||
} | |||
/* MinervaNeue — закріпити "Налаштування" внизу drawer + світліший фон + сховати scrollbar */ | |||
.skin-minerva #mw-mf-page-left { | |||
display: flex; | |||
flex-direction: column; | |||
min-height: 100%; | |||
background: #ffffff; | |||
scrollbar-width: none; /* Firefox */ | |||
-ms-overflow-style: none; /* IE/Edge legacy */ | |||
} | |||
.skin-minerva #mw-mf-page-left::-webkit-scrollbar { | |||
display: none; /* WebKit (Chrome, Safari, Brave) */ | |||
width: 0; | |||
height: 0; | |||
} | |||
.skin-minerva #mw-mf-page-left #pt-preferences { | |||
order: 99; | |||
margin-top: auto; | |||
border-top: 1px solid #eaecf0; | |||
padding-top: 4px; | |||
} | |||
/* Disclaimer (єдиний пункт у ul.hlist після видалення About) — під налаштуваннями */ | |||
.skin-minerva #mw-mf-page-left ul.hlist { | |||
order: 100; | |||
margin: 0 0 8px; | |||
padding: 0; | |||
list-style: none; | |||
} | |||
.skin-minerva #mw-mf-page-left ul.hlist .toggle-list-item__anchor { | |||
font-size: 13px; | |||
color: #72777d; | |||
padding: 8px 16px; | |||
} | |||
/* MinervaNeue — баннер "Про Країнопедію" зверху drawer (4 сторони — 4 окремі кольори) */ | |||
.skin-minerva .drawer-about-banner { | |||
display: flex; | |||
align-items: center; | |||
justify-content: space-between; | |||
margin: 12px; | |||
padding: 24px 20px; | |||
background: transparent; | |||
border-top: 2px solid #00b898; | |||
border-right: 2px solid #f8b020; | |||
border-bottom: 2px solid #f84840; | |||
border-left: 2px solid #1070b0; | |||
border-radius: 0; | |||
color: #1a2240 !important; | |||
text-decoration: none !important; | |||
font-family: "Manrope", sans-serif; | |||
position: relative; | |||
order: -10; | |||
} | |||
.skin-minerva .drawer-about-banner__title { | |||
display: flex; | |||
flex-direction: column; | |||
gap: 4px; | |||
line-height: 1.2; | |||
} | |||
.skin-minerva .drawer-about-banner__kicker, | |||
.skin-minerva .drawer-about-banner__name { | |||
font-size: 18px; | |||
font-weight: 700; | |||
letter-spacing: -0.01em; | |||
text-transform: none; | |||
color: #1a2240; | |||
} | |||
.skin-minerva .drawer-about-banner__arrow { | |||
font-size: 22px; | |||
line-height: 1; | |||
color: #72777d; | |||
transition: transform .15s ease, color .15s ease; | |||
flex-shrink: 0; | |||
margin-left: 12px; | |||
} | |||
.skin-minerva .drawer-about-banner:hover, | |||
.skin-minerva .drawer-about-banner:active { | |||
text-decoration: none !important; | |||
color: #1a2240 !important; | |||
} | |||
.skin-minerva .drawer-about-banner:hover .drawer-about-banner__arrow, | |||
.skin-minerva .drawer-about-banner:active .drawer-about-banner__arrow { | |||
transform: translateX(4px); | |||
color: #1a2240; | |||
} | |||
/* Vector-2022 (desktop) — wordmark як текст замість картинки. | |||
$wgLogos['wordmark'] — png для Minerva (мобілка); на десктопі | |||
ховаємо img і малюємо текст "Країнопедія" через ::before. */ | |||
.skin-vector-2022 .mw-logo-wordmark { | |||
display: none !important; | |||
} | |||
.skin-vector-2022 .mw-logo-container::before { | |||
content: 'Країнопедія'; | |||
font-family: 'Manrope', system-ui, sans-serif; | |||
font-weight: 600; | |||
font-size: 24px; | |||
color: #1a2240; | |||
letter-spacing: -0.015em; | |||
line-height: 1.1; | |||
display: block; | |||
white-space: nowrap; | |||
} | |||
/* ==================================================================== | |||
Special:UserLogin / Special:CreateAccount — beautiful auth pages v2 | |||
==================================================================== */ | |||
/* BODY стає flex-контейнером на весь viewport, щоб header + page-container + footer | |||
правильно розподілили висоту. Інакше .mw-page-container з min-height:100vh | |||
опускається нижче хедера → overflow + форма візуально вище центру. */ | |||
body.mw-special-Userlogin, | |||
body.mw-special-CreateAccount { | |||
min-height: 100vh !important; | |||
display: flex !important; | |||
flex-direction: column !important; | |||
background-color: #1a2240 !important; | |||
background-image: url('/images/login-bg.png?v=2') !important; | |||
background-size: cover !important; | |||
background-repeat: no-repeat !important; | |||
background-position: center center !important; | |||
background-attachment: fixed !important; | |||
} | |||
/* Покрити html теж, щоб не було просвіту якщо body не покриває все */ | |||
html.client-js body.mw-special-Userlogin, | |||
html body.mw-special-Userlogin { | |||
background-color: #1a2240 !important; | |||
} | |||
html:has(body.mw-special-Userlogin) { | |||
background-image: url('/images/login-bg.png?v=2') !important; | |||
background-size: cover !important; | |||
background-repeat: no-repeat !important; | |||
background-position: center center !important; | |||
background-attachment: fixed !important; | |||
background-color: #1a2240 !important; | |||
min-height: 100vh; | |||
} | |||
body.mw-special-Userlogin .vector-header-container, | |||
body.mw-special-CreateAccount .vector-header-container { | |||
flex: 0 0 auto; | |||
/* Як на головній — Vector default: max-width 99.75em, центровано */ | |||
max-width: 99.75em !important; | |||
min-width: 31.25em !important; | |||
margin-left: auto !important; | |||
margin-right: auto !important; | |||
width: 100% !important; | |||
align-self: center !important; | |||
box-sizing: border-box !important; | |||
} | |||
/* Фон + повна ширина viewport (прибираємо Vector max-width центрування) */ | |||
body.mw-special-Userlogin .mw-page-container, | |||
body.mw-special-CreateAccount .mw-page-container { | |||
background: transparent !important; | |||
flex: 1 1 auto !important; | |||
min-height: 0 !important; | |||
display: flex !important; | |||
flex-direction: column !important; | |||
max-width: none !important; | |||
width: 100% !important; | |||
margin: 0 !important; | |||
padding: 0 !important; | |||
border: none !important; | |||
} | |||
/* Inner — замінити Vector grid (з зарезервованою sidebar-колонкою) на flex column, | |||
flex:1 щоб займало всю висоту в page-container, justify-center для вертикалі */ | |||
body.mw-special-Userlogin .mw-page-container-inner, | |||
body.mw-special-CreateAccount .mw-page-container-inner { | |||
flex: 1 1 auto !important; | |||
display: flex !important; | |||
flex-direction: column !important; | |||
align-items: center !important; | |||
justify-content: center !important; | |||
padding-top: 24px !important; | |||
padding-bottom: 24px !important; | |||
grid-template-columns: 1fr !important; | |||
grid-template-areas: none !important; | |||
width: 100% !important; | |||
max-width: none !important; | |||
position: relative !important; | |||
} | |||
body.mw-special-Userlogin .mw-content-container, | |||
body.mw-special-CreateAccount .mw-content-container { | |||
display: flex !important; | |||
flex-direction: column !important; | |||
align-items: center !important; | |||
justify-content: center !important; | |||
width: 100% !important; | |||
max-width: none !important; | |||
margin: 0 !important; | |||
grid-column: 1 / -1 !important; | |||
} | |||
/* (стара flex-розкладка .mw-body / #bodyContent видалена — тепер | |||
.mw-body це повноцінна картка, див. секцію нижче) */ | |||
/* Footer — стискається до контенту і центрується по горизонталі */ | |||
body.mw-special-Userlogin .mw-footer-container, | |||
body.mw-special-CreateAccount .mw-footer-container { | |||
flex: 0 0 auto; | |||
margin-top: auto; | |||
width: auto !important; | |||
max-width: max-content !important; | |||
margin-left: auto !important; | |||
margin-right: auto !important; | |||
background: none !important; | |||
padding: 16px !important; | |||
color: #ffffff !important; | |||
} | |||
/* Усі тексти і посилання у футері — білі з легкою тінню для читабельності */ | |||
body.mw-special-Userlogin .mw-footer-container, | |||
body.mw-special-Userlogin .mw-footer-container *, | |||
body.mw-special-CreateAccount .mw-footer-container, | |||
body.mw-special-CreateAccount .mw-footer-container * { | |||
color: #ffffff !important; | |||
text-shadow: 0 1px 3px rgba(0, 0, 0, 0.5); | |||
} | |||
body.mw-special-Userlogin .mw-footer-container a, | |||
body.mw-special-CreateAccount .mw-footer-container a { | |||
color: #ffffff !important; | |||
text-decoration: none; | |||
} | |||
body.mw-special-Userlogin .mw-footer-container a:hover, | |||
body.mw-special-CreateAccount .mw-footer-container a:hover { | |||
color: #ffffff !important; | |||
text-decoration: underline; | |||
} | |||
body.mw-special-Userlogin #mw-footer, | |||
body.mw-special-CreateAccount #mw-footer { | |||
padding: 0 !important; | |||
} | |||
/* Футер-плейси — в один рядок, відцентровано, маленький розмір */ | |||
body.mw-special-Userlogin #footer-places, | |||
body.mw-special-CreateAccount #footer-places { | |||
display: flex !important; | |||
flex-wrap: wrap; | |||
gap: 16px; | |||
justify-content: center; | |||
margin: 0 !important; | |||
padding: 0 !important; | |||
} | |||
body.mw-special-Userlogin #footer-places li, | |||
body.mw-special-CreateAccount #footer-places li { | |||
font-size: 12px; | |||
color: #ffffff !important; | |||
text-shadow: 0 1px 3px rgba(0, 0, 0, 0.5); | |||
position: relative; | |||
z-index: 2; | |||
} | |||
body.mw-special-Userlogin #footer-places li a, | |||
body.mw-special-CreateAccount #footer-places li a { | |||
color: #ffffff !important; | |||
text-decoration: none; | |||
} | |||
body.mw-special-Userlogin #footer-places li a:hover, | |||
body.mw-special-CreateAccount #footer-places li a:hover { | |||
color: #ffffff !important; | |||
text-decoration: underline; | |||
} | |||
/* Темний градієнт прикріплений до низу viewport — fixed щоб завжди знизу */ | |||
body.mw-special-Userlogin::after, | |||
body.mw-special-CreateAccount::after { | |||
content: ""; | |||
position: fixed; | |||
left: 0; | |||
right: 0; | |||
bottom: 0; | |||
height: 180px; | |||
background: linear-gradient(to bottom, transparent 0%, rgba(0, 0, 0, 0.55) 100%); | |||
pointer-events: none; | |||
z-index: 3; | |||
} | |||
/* Footer — натуральний flex-потік, margin-top: auto штовхне його до низу | |||
.mw-page-container. Не fixed, тому фізично під формою — не перекриває. | |||
margin-top: 50px — мінімальний відступ від форми (якщо контент короткий — | |||
auto штовхне ще нижче, до низу viewport). */ | |||
body.mw-special-Userlogin .mw-footer-container, | |||
body.mw-special-CreateAccount .mw-footer-container { | |||
position: relative !important; | |||
z-index: 4 !important; | |||
margin-top: 50px !important; | |||
} | |||
/* Sitenotice між inner і footer — не повинен заважати */ | |||
body.mw-special-Userlogin .vector-sitenotice-container, | |||
body.mw-special-CreateAccount .vector-sitenotice-container { | |||
flex: 0 0 auto; | |||
} | |||
/* Прибрати "Мобільний вигляд" з футера */ | |||
#footer-places-mobileview { | |||
display: none !important; | |||
} | |||
/* Прибрати page-toolbar і tools-dropdown на сторінках авторизації */ | |||
body.mw-special-Userlogin .vector-page-toolbar, | |||
body.mw-special-Userlogin .vector-page-titlebar-toc, | |||
body.mw-special-CreateAccount .vector-page-toolbar, | |||
body.mw-special-CreateAccount .vector-page-titlebar-toc { | |||
display: none !important; | |||
} | |||
/* Сховати весь лівий sidebar (main menu + TOC) на auth-сторінках — | |||
щоб контент-область займала всю ширину і form міг центруватись по екрану. */ | |||
body.mw-special-Userlogin .vector-main-menu-container, | |||
body.mw-special-Userlogin .vector-main-menu-landmark, | |||
body.mw-special-Userlogin #mw-panel, | |||
body.mw-special-Userlogin #mw-panel-toc, | |||
body.mw-special-Userlogin .vector-page-tools-landmark, | |||
body.mw-special-CreateAccount .vector-main-menu-container, | |||
body.mw-special-CreateAccount .vector-main-menu-landmark, | |||
body.mw-special-CreateAccount #mw-panel, | |||
body.mw-special-CreateAccount #mw-panel-toc, | |||
body.mw-special-CreateAccount .vector-page-tools-landmark { | |||
display: none !important; | |||
} | |||
/* .mw-content-container — flex row для двох карток (login | register) поряд */ | |||
body.mw-special-Userlogin .mw-content-container, | |||
body.mw-special-CreateAccount .mw-content-container { | |||
margin: 0 !important; | |||
padding: 0 !important; | |||
width: 100% !important; | |||
height: 100% !important; | |||
max-width: none !important; | |||
background: none !important; | |||
border: none !important; | |||
display: flex !important; | |||
flex-direction: row !important; | |||
flex-wrap: wrap !important; | |||
align-items: center !important; | |||
justify-content: center !important; | |||
gap: 24px !important; | |||
flex: 1 1 auto !important; | |||
grid-column: 1 / -1 !important; | |||
} | |||
/* Картки однакової ширини */ | |||
body.mw-special-Userlogin .mw-body, | |||
body.mw-special-Userlogin .mw-register-panel, | |||
body.mw-special-CreateAccount .mw-body, | |||
body.mw-special-CreateAccount .mw-register-panel { | |||
flex: 0 1 420px !important; | |||
} | |||
/* === ПРАВА панель: реєстрація === */ | |||
.mw-register-panel { | |||
background: #ffffff; | |||
border-radius: 20px; | |||
padding: 56px 32px 40px; | |||
box-shadow: | |||
0 1px 2px rgba(26, 34, 64, 0.04), | |||
0 8px 32px rgba(26, 34, 64, 0.10); | |||
position: relative; | |||
overflow: hidden; | |||
box-sizing: border-box; | |||
text-align: center; | |||
z-index: 2; | |||
align-self: stretch; | |||
display: flex; | |||
flex-direction: column; | |||
justify-content: center; | |||
align-items: center; | |||
} | |||
/* Top-stripe як у лівій */ | |||
.mw-register-panel::before { | |||
content: ""; | |||
position: absolute; | |||
top: 0; | |||
left: 0; | |||
right: 0; | |||
height: 3px; | |||
background: linear-gradient(90deg, | |||
#f84840 0%, #f84840 25%, | |||
#f8b020 25%, #f8b020 50%, | |||
#1070b0 50%, #1070b0 75%, | |||
#00b898 75%, #00b898 100%); | |||
z-index: 1; | |||
} | |||
.mw-register-panel__title { | |||
font-family: "Manrope", sans-serif; | |||
font-weight: 800; | |||
font-size: 32px; | |||
color: #1a2240; | |||
letter-spacing: -0.02em; | |||
line-height: 1.1; | |||
margin-bottom: 8px; | |||
} | |||
.mw-register-panel__sub { | |||
font-family: "Manrope", sans-serif; | |||
font-weight: 400; | |||
font-size: 15px; | |||
color: #6b7280; | |||
line-height: 1.4; | |||
margin-bottom: 32px; | |||
max-width: 280px; | |||
} | |||
.mw-register-panel__cta { | |||
display: inline-block; | |||
background: #00b898; | |||
color: #ffffff !important; | |||
font-family: "Manrope", sans-serif; | |||
font-weight: 600; | |||
font-size: 16px; | |||
padding: 14px 28px; | |||
border-radius: 10px; | |||
text-decoration: none !important; | |||
transition: background 0.15s, transform 0.05s; | |||
} | |||
.mw-register-panel__cta:hover { | |||
background: #009e82; | |||
text-decoration: none !important; | |||
} | |||
.mw-register-panel__cta:active { | |||
transform: translateY(1px); | |||
} | |||
/* Mobile — стак вертикально */ | |||
@media (max-width: 880px) { | |||
body.mw-special-Userlogin .mw-body, | |||
body.mw-special-Userlogin .mw-register-panel, | |||
body.mw-special-CreateAccount .mw-body, | |||
body.mw-special-CreateAccount .mw-register-panel { | |||
flex: 0 1 calc(100% - 32px) !important; | |||
max-width: 420px !important; | |||
} | |||
} | |||
/* .mw-body — це КАРТКА входу (зліва). Біла, з тінню, top-страйп. */ | |||
body.mw-special-Userlogin .mw-body, | |||
body.mw-special-CreateAccount .mw-body { | |||
background: #ffffff !important; | |||
border-radius: 20px !important; | |||
padding: 40px 32px 32px !important; | |||
box-shadow: | |||
0 1px 2px rgba(26, 34, 64, 0.04), | |||
0 8px 32px rgba(26, 34, 64, 0.10) !important; | |||
overflow: hidden !important; | |||
width: calc(100% - 32px) !important; | |||
max-width: 420px !important; | |||
display: block !important; | |||
align-items: initial !important; | |||
box-sizing: border-box !important; | |||
position: relative !important; | |||
margin: 0 !important; | |||
z-index: 2 !important; | |||
} | |||
/* 4-кольорова смуга зверху карточки (бренд-акцент) */ | |||
body.mw-special-Userlogin .mw-body::before, | |||
body.mw-special-CreateAccount .mw-body::before { | |||
content: ""; | |||
position: absolute; | |||
top: 0; | |||
left: 0; | |||
right: 0; | |||
height: 3px; | |||
background: linear-gradient(90deg, | |||
#00b898 0%, #00b898 25%, | |||
#1070b0 25%, #1070b0 50%, | |||
#f8b020 50%, #f8b020 75%, | |||
#f84840 75%, #f84840 100%); | |||
z-index: 1; | |||
} | |||
/* Сховати page-titlebar (header області) — він не потрібен на login */ | |||
body.mw-special-Userlogin .mw-body-header, | |||
body.mw-special-CreateAccount .mw-body-header { | |||
display: none !important; | |||
} | |||
/* Оригінальний h1 .firstHeading "Вхід до системи" приховуємо — | |||
замість нього welcome з MediaWiki:Loginprompt виступає як заголовок */ | |||
body.mw-special-Userlogin .firstHeading, | |||
body.mw-special-CreateAccount .firstHeading { | |||
display: none !important; | |||
} | |||
/* Welcome — контейнер */ | |||
body.mw-special-Userlogin #userloginprompt, | |||
body.mw-special-CreateAccount #userloginprompt { | |||
display: block !important; | |||
text-align: center; | |||
margin: 0 0 28px; | |||
padding: 0; | |||
background: none; | |||
} | |||
body.mw-special-Userlogin .login-welcome, | |||
body.mw-special-CreateAccount .login-welcome { | |||
display: block; | |||
} | |||
/* "Вітаємо" — заголовок */ | |||
body.mw-special-Userlogin .login-welcome-title, | |||
body.mw-special-CreateAccount .login-welcome-title { | |||
font-family: "Manrope", sans-serif; | |||
font-weight: 800; | |||
font-size: 32px; | |||
color: #1a2240; | |||
letter-spacing: -0.02em; | |||
line-height: 1.1; | |||
margin: 0 0 8px; | |||
} | |||
/* "Раді бачити знову" — підзаголовок */ | |||
body.mw-special-Userlogin .login-welcome-sub, | |||
body.mw-special-CreateAccount .login-welcome-sub { | |||
font-family: "Manrope", sans-serif; | |||
font-weight: 400; | |||
font-size: 15px; | |||
color: #6b7280; | |||
letter-spacing: 0; | |||
line-height: 1.4; | |||
margin: 0; | |||
} | |||
/* #bodyContent / #mw-content-text — прозорі прохідники всередині .mw-body */ | |||
body.mw-special-Userlogin #bodyContent, | |||
body.mw-special-CreateAccount #bodyContent, | |||
body.mw-special-Userlogin #mw-content-text, | |||
body.mw-special-CreateAccount #mw-content-text { | |||
background: none !important; | |||
border: none !important; | |||
padding: 0 !important; | |||
margin: 0 !important; | |||
width: 100% !important; | |||
max-width: none !important; | |||
box-sizing: border-box; | |||
} | |||
/* #userloginForm — не картка, просто wrapper для форми */ | |||
body.mw-special-Userlogin #userloginForm, | |||
body.mw-special-CreateAccount #userloginForm { | |||
background: none !important; | |||
border-radius: 0 !important; | |||
padding: 0 !important; | |||
box-shadow: none !important; | |||
margin: 16px 0 0 0 !important; | |||
overflow: visible !important; | |||
} | |||
body.mw-special-Userlogin #userloginForm::before, | |||
body.mw-special-CreateAccount #userloginForm::before { | |||
content: none !important; | |||
} | |||
/* Видалити старий top-stripe з #userloginForm (тепер на .mw-body) */ | |||
body.mw-special-Userlogin #userloginForm::before, | |||
body.mw-special-CreateAccount #userloginForm::before { | |||
content: none !important; | |||
} | |||
body.mw-special-Userlogin #userloginForm form, | |||
body.mw-special-CreateAccount #userloginForm form { | |||
margin: 0; | |||
} | |||
/* Зануляємо паддінги/маржини wrapper-ів MediaWiki HTMLForm, щоб все | |||
мало єдиний контейнер і вирівнювалось по тій самій сітці. */ | |||
body.mw-special-Userlogin .mw-htmlform-field-HTMLTextField, | |||
body.mw-special-Userlogin .mw-htmlform-field-HTMLCheckField, | |||
body.mw-special-Userlogin .mw-htmlform-field-HTMLSubmitField, | |||
body.mw-special-Userlogin .mw-htmlform-field-HTMLInfoField, | |||
body.mw-special-CreateAccount .mw-htmlform-field-HTMLTextField, | |||
body.mw-special-CreateAccount .mw-htmlform-field-HTMLCheckField, | |||
body.mw-special-CreateAccount .mw-htmlform-field-HTMLSubmitField, | |||
body.mw-special-CreateAccount .mw-htmlform-field-HTMLInfoField { | |||
padding: 0 !important; | |||
} | |||
body.mw-special-Userlogin #userloginForm .mw-input, | |||
body.mw-special-Userlogin #userloginForm .cdx-text-input, | |||
body.mw-special-CreateAccount #userloginForm .mw-input, | |||
body.mw-special-CreateAccount #userloginForm .cdx-text-input, | |||
body.mw-special-CreateAccount .mw-htmlform-codex .mw-input, | |||
body.mw-special-CreateAccount .mw-htmlform-codex .cdx-text-input { | |||
padding: 0 !important; | |||
margin: 0 !important; | |||
width: 100% !important; | |||
box-sizing: border-box !important; | |||
} | |||
/* MediaWiki .mw-ui-vform-field має дефолтний max-width 25em — звужує | |||
всі поля до лівого краю. Знімаємо ліміт, форма теж на повну ширину. */ | |||
body.mw-special-Userlogin .mw-ui-vform-field, | |||
body.mw-special-Userlogin .mw-htmlform-codex, | |||
body.mw-special-Userlogin #userloginForm form, | |||
body.mw-special-CreateAccount .mw-ui-vform-field, | |||
body.mw-special-CreateAccount .mw-htmlform-codex, | |||
body.mw-special-CreateAccount #userloginForm form { | |||
max-width: none !important; | |||
width: 100% !important; | |||
box-sizing: border-box !important; | |||
} | |||
/* Spacing для полів */ | |||
body.mw-special-Userlogin .mw-htmlform-field-HTMLTextField, | |||
body.mw-special-CreateAccount .mw-htmlform-field-HTMLTextField { | |||
margin-bottom: 16px !important; | |||
} | |||
/* Лейбли — компактні, приглушені */ | |||
body.mw-special-Userlogin .mw-htmlform-field-HTMLTextField > label, | |||
body.mw-special-CreateAccount .mw-htmlform-field-HTMLTextField > label { | |||
display: block; | |||
font-size: 13px; | |||
font-weight: 600; | |||
color: #4a5568; | |||
margin-bottom: 6px; | |||
font-family: "Manrope", sans-serif; | |||
} | |||
/* Інпути — pill-style, soft fill, focus → білий + темний бордер */ | |||
body.mw-special-Userlogin #userloginForm .cdx-text-input__input, | |||
body.mw-special-CreateAccount #userloginForm .cdx-text-input__input, | |||
body.mw-special-CreateAccount .mw-htmlform-codex .cdx-text-input__input { | |||
background: #f4f6fa !important; | |||
border: 1px solid transparent !important; | |||
border-radius: 10px !important; | |||
padding: 12px 14px !important; | |||
font-size: 15px !important; | |||
width: 100% !important; | |||
box-sizing: border-box !important; | |||
box-shadow: none !important; | |||
transition: border-color 0.15s, background 0.15s !important; | |||
font-family: "Manrope", sans-serif !important; | |||
} | |||
body.mw-special-Userlogin #userloginForm .cdx-text-input__input:focus, | |||
body.mw-special-CreateAccount #userloginForm .cdx-text-input__input:focus, | |||
body.mw-special-CreateAccount .mw-htmlform-codex .cdx-text-input__input:focus { | |||
background: #ffffff !important; | |||
border-color: #1a2240 !important; | |||
outline: none !important; | |||
box-shadow: none !important; | |||
} | |||
/* Checkbox "Запам'ятати мене" */ | |||
body.mw-special-Userlogin .mw-userlogin-rememberme { | |||
margin: 8px 0 24px; | |||
} | |||
body.mw-special-Userlogin .cdx-checkbox { | |||
display: flex; | |||
align-items: center; | |||
gap: 8px; | |||
} | |||
body.mw-special-Userlogin .cdx-checkbox__label { | |||
font-size: 14px; | |||
font-family: "Manrope", sans-serif; | |||
color: #4a5568; | |||
cursor: pointer; | |||
} | |||
body.mw-special-Userlogin .cdx-checkbox__input { | |||
width: 18px; | |||
height: 18px; | |||
margin: 0; | |||
cursor: pointer; | |||
} | |||
/* Submit "Вхід" / "Створити обліковий запис" — коралова CTA */ | |||
body.mw-special-Userlogin #wpLoginAttempt, | |||
body.mw-special-CreateAccount #wpCreateaccount, | |||
body.mw-special-CreateAccount button.mw-htmlform-submit { | |||
background: #f84840 !important; | |||
border-color: #f84840 !important; | |||
color: #ffffff !important; | |||
border-radius: 10px !important; | |||
padding: 12px 24px !important; | |||
font-weight: 700 !important; | |||
width: 100% !important; | |||
font-size: 15px !important; | |||
font-family: "Manrope", sans-serif !important; | |||
box-shadow: 0 2px 8px rgba(248, 72, 64, 0.25) !important; | |||
transition: background 0.15s, box-shadow 0.15s !important; | |||
margin-top: 4px; | |||
} | |||
body.mw-special-Userlogin #wpLoginAttempt:hover, | |||
body.mw-special-CreateAccount #wpCreateaccount:hover { | |||
background: #e63a32 !important; | |||
border-color: #e63a32 !important; | |||
box-shadow: 0 4px 12px rgba(248, 72, 64, 0.35) !important; | |||
} | |||
/* Допоміжні лінки ("Допомога з входу", "Забули пароль") — центровано */ | |||
body.mw-special-Userlogin .mw-userlogin-help, | |||
body.mw-special-Userlogin .mw-form-related-link-container, | |||
body.mw-special-CreateAccount .mw-form-related-link-container { | |||
text-align: center !important; | |||
font-size: 14px; | |||
margin-top: 16px; | |||
} | |||
body.mw-special-Userlogin .mw-userlogin-help a, | |||
body.mw-special-Userlogin .mw-form-related-link-container a, | |||
body.mw-special-CreateAccount .mw-form-related-link-container a { | |||
color: #1070b0; | |||
text-decoration: none; | |||
font-weight: 500; | |||
} | |||
body.mw-special-Userlogin .mw-userlogin-help a:hover, | |||
body.mw-special-Userlogin .mw-form-related-link-container a:hover { | |||
color: #1a2240; | |||
text-decoration: underline; | |||
} | |||
/* "Допомога з входу" — приховаємо як external/непотрібне посилання */ | |||
body.mw-special-Userlogin .mw-userlogin-help { | |||
display: none; | |||
} | |||
/* "Немає облікового запису?" — footer-секція форми, з top-розділювачем. | |||
Wrapper-и батьків зануляємо, щоб footer вийшов до самих країв картки. */ | |||
body.mw-special-Userlogin .mw-htmlform-field-HTMLInfoField:has(#mw-createaccount-cta) { | |||
margin: 24px -32px -32px !important; | |||
padding: 0 !important; | |||
width: calc(100% + 64px) !important; | |||
} | |||
body.mw-special-Userlogin .mw-htmlform-field-HTMLInfoField:has(#mw-createaccount-cta) > .mw-input { | |||
margin: 0 !important; | |||
padding: 0 !important; | |||
width: 100% !important; | |||
} | |||
body.mw-special-Userlogin #mw-createaccount-cta { | |||
margin: 0 !important; | |||
padding: 20px 32px !important; | |||
background: #f9fafc; | |||
border-radius: 0 0 20px 20px; | |||
border-top: 1px solid #eef0f4; | |||
text-align: center; | |||
font-size: 14px; | |||
color: #6b7280; | |||
font-family: "Manrope", sans-serif; | |||
display: flex; | |||
align-items: center; | |||
justify-content: center; | |||
gap: 8px; | |||
flex-wrap: wrap; | |||
box-shadow: none; | |||
width: 100%; | |||
box-sizing: border-box; | |||
} | |||
body.mw-special-Userlogin #mw-createaccount-join { | |||
background: transparent !important; | |||
border: none !important; | |||
color: #1070b0 !important; | |||
border-radius: 0 !important; | |||
padding: 0 !important; | |||
font-weight: 700 !important; | |||
font-size: 14px !important; | |||
font-family: "Manrope", sans-serif !important; | |||
text-decoration: none !important; | |||
box-shadow: none !important; | |||
transition: color 0.15s !important; | |||
} | |||
body.mw-special-Userlogin #mw-createaccount-join:hover { | |||
background: transparent !important; | |||
color: #f84840 !important; | |||
text-decoration: underline !important; | |||
} | |||
/* Прибрати сірі силуети людей знизу (фоновий help-icon) */ | |||
body.mw-special-Userlogin .mw-userlogin-help-icon, | |||
body.mw-special-Userlogin #userloginprompt::before, | |||
body.mw-special-Userlogin .mw-ui-container > .mw-userlogin-help-icon { | |||
display: none !important; | |||
} | |||
/* Mobile — менші відступи в карточці */ | |||
@media screen and (max-width: 480px) { | |||
body.mw-special-Userlogin #userloginForm, | |||
body.mw-special-CreateAccount #userloginForm { | |||
padding: 24px 20px; | |||
} | |||
body.mw-special-Userlogin .firstHeading, | |||
body.mw-special-CreateAccount .firstHeading { | |||
font-size: 26px; | |||
margin-top: 16px; | |||
} | |||
} | |||