MediaWiki:Vector.css: различия между версиями

Нет описания правки
Нет описания правки
Строка 7: Строка 7:
     --color-bg-section: rgba(0, 0, 0, 0.33);
     --color-bg-section: rgba(0, 0, 0, 0.33);
     --color-bg-section-light: rgba(125, 125, 125, 0.05);
     --color-bg-section-light: rgba(125, 125, 125, 0.05);
    --color-bg-section-lighter: rgba(125, 125, 125, 0.1);
     --color-text: #e6e4e1;
     --color-text: #e6e4e1;
     --color-text-darker: #cccac8;
     --color-text-darker: #cccac8;
Строка 71: Строка 72:


pre, code, .mw-code {
pre, code, .mw-code {
     background-color: var(--color-bg-section-light);
     background-color: var(--color-bg-section-lighter);
     color: var(--color-text-darker);
     color: var(--color-text-darker);
     border: 1px solid var(--color-border);
     border: 1px solid var(--color-border);

Версия от 09:34, 1 мая 2024

/* Весь CSS будет отсюда будет загружен пользователям темы оформления «Векторная» */

:root {
    /* Базовые цвета */
    --color-fg: #ffffff;
    --color-bg: #252525;
    --color-bg-section: rgba(0, 0, 0, 0.33);
    --color-bg-section-light: rgba(125, 125, 125, 0.05);
    --color-bg-section-lighter: rgba(125, 125, 125, 0.1);
    --color-text: #e6e4e1;
    --color-text-darker: #cccac8;
    --color-text-translucent: rgba(255, 255, 255, 0.5);
    --color-border: rgba(255, 255, 255, 0.1);
    --color-border-input: #88bfff;
    --color-hover: rgba(255, 255, 255, 0.075);
    --color-selected: rgba(255, 255, 255, 0.125);
  
    /* Цвета элементов */
    --color-red: rgba(219, 40, 40, 1);
    --color-orange: rgba(240, 143, 17, 1);
    --color-yellow: rgba(251, 214, 8, 1);
    --color-olive: rgba(181, 204, 24, 1);
    --color-green: rgba(91, 170, 39, 1);
    --color-teal: rgba(0, 181, 173, 1);
    --color-blue: rgba(33, 133, 208, 1);
    --color-violet: rgba(100, 53, 201, 1);
    --color-purple: rgba(163, 51, 200, 1);
    --color-pink: rgba(224, 57, 151, 1);
    --color-brown: rgba(165, 103, 63, 1);
    --color-grey: rgba(118, 118, 118, 1);
    --color-primary: rgba(73, 114, 161, 1);
    --color-label: rgba(126, 144, 167, 1);

    /* Осветлённые цвета элементов. Знаю что бред, но увы, Lighten нет */
    --color-red-light: rgba(251, 58, 58, 1);
    --color-orange-light: rgba(255, 163, 40, 1);
    --color-yellow-light: rgba(255, 233, 29, 1);
    --color-olive-light: rgba(208, 225, 37, 1);
    --color-green-light: rgba(105, 195, 43, 1);
    --color-teal-light: rgba(0, 209, 193, 1);
    --color-blue-light: rgba(70, 168, 255, 1);
    --color-violet-light: rgba(168, 68, 255, 1);
    --color-purple-light: rgba(188, 68, 255, 1);
    --color-pink-light: rgba(255, 79, 181, 1);
    --color-brown-light: rgba(191, 123, 76, 1);
    --color-grey-light: rgba(136, 136, 136, 1);
    --color-primary-light: rgba(119, 148, 187, 1);
    --color-label-light: rgba(145, 166, 192, 1);

    /* Размеры */
    --border-radius-tiny: 0.16em;
    --border-radius-small: 0.25em;
    --border-radius-medium: 0.5em;
    --border-radius-large: 1em;
}

strong {
    color: var(--color-text) !important;
}

li, p, label {
    color: var(--color-text-darker);
}

h1, h2, h3, h4, h5, h6 {
    color: var(--color-text);
}

h2 {
    border-bottom: 2px solid var(--color-primary);
}

pre, code, .mw-code {
    background-color: var(--color-bg-section-lighter);
    color: var(--color-text-darker);
    border: 1px solid var(--color-border);
}

body.skin-vector {
    background-color: var(--color-bg);
    color: var(--color-text-darker)
}

.vector .mw-body h1, .mw-body-content h1, .mw-body-content h2 {
    padding: 0.2em 0.2em 0.2em 0.4em;
}

/* Header */
@media screen and (min-width: 1000px) {
    .vector-sticky-header {
        display: none;
    }
}

.mw-header {
    position: fixed;
    padding: 0.5em 0;
    backdrop-filter: blur(12px);
    background-color: var(--color-bg-section);
    color: var(--color-fg);
    width: 100%;
}

.vector-user-menu-more .vector-menu-content-list, .vector-user-menu-overflow .vector-menu-content-list {
    background-color: rgba(0, 0, 0, 0);
}

/* Поиск */
.vector-search-box-input {
    background-color: var(--color-bg-section-light) !important;
    color: var(--color-text-darker) !important;
    width: 100% !important;
    height: 2.15em;
    box-sizing: border-box;
    border: 1px solid #a2a9b1;
    border-radius: 2px;
    padding: 5px 2.15em 5px 0.4em;
    box-shadow: none;
    border: 1px solid var(--color-border);
    transition-property: border-color,box-shadow;
    transition-duration: 250ms;
}

/* Выпадающие меню */
.vector-menu-dropdown {
    position: relative;
    margin-right: 1em;
}

.vector-menu-dropdown .vector-menu-content {
    margin-top: 0.5em;
    padding: 0.5em;
    background-color: #111111; /* Нужно заменить на переменную, и применить блюр потом */
    color: var(--color-text);
    border: 1px solid var(--color-border);
    box-shadow: 0px 0px 25px 5px rgba(0, 0, 0, 0.7);
    transition: all 0.2s;
}

.vector-menu-checkbox:focus + .vector-menu-heading {
    outline: none;
}

.vector-user-menu a{
    padding: 0 0.33em !important;
    white-space: nowrap;
    transition: background-color 0.2s;
}

.vector-user-menu a:hover{
    background-color: var(--color-primary-light) !important;
}

.vector-menu-dropdown .mw-list-item a {
    min-height: 32px;
    display: flex;
    align-items: center;
    margin: 0.5em 0;
    border-radius: var(--border-radius-tiny);
    white-space: nowrap;
    background-color: var(--color-primary);
    color: var(--color-text) !important;
    text-decoration: none !important;
    transition: background-color 0.2s;
}

.vector-menu-dropdown .mw-list-item a:hover {
    background-color: var(--color-primary-light) !important;
}

.vector-user-menu-logout {
    border-top: 2px solid var(--color-border);
}

.vector-user-menu-logout a {
    margin-top: 0.5em;
    border-top: none;
    border-radius: var(--border-radius-tiny);
    background-color: var(--color-red);
    color: var(--color-text) !important;
    text-decoration: none !important;
}

.vector-user-menu-logout a:hover {
    background-color: var(--color-red-light) !important;
}

/* Sidebar */
.mw-sidebar {
    position: fixed;
    height: 100%;
    margin: 2.6em 0 0 0;
    backdrop-filter: blur(12px);
    background-color: var(--color-bg-section);
    color: var(--color-fg);
}

#mw-sidebar-button {
    margin: 0 0.75em 0 0.5em;
    
}

.vector-menu-portal 
.vector-menu-heading  {
    margin: 0.5em 0 0 0 !important;
    background-color: var(--color-bg-section-light);
    text-decoration: none !important;
    border-bottom: 2px solid var(--color-primary) !important;
}

.vector-menu-portal 
.vector-menu-heading-label {
    color: var(--color-text-darker) !important;
}

.vector-menu-portal 
.vector-menu-content {
    margin: 0 !important;
    background-color: var(--color-bg-section-light);
    color: var(--color-text);
}

#left-navigation {
    margin-left: 0px;
}

.vector-menu-tabs .mw-watchlink.icon a {
    content: none;
    color: transparent;
    margin: 0 1.5em 0 1em;
}

.vector-menu-tabs .mw-list-item, .mw-article-toolbar-container .vector-menu-dropdown {
    margin: 0;
}

/* Toolbar */
.mw-article-toolbar-container {
    margin: 0.5em 0.5em 0 0.5em;
    color: var(--color-text);
    border: none;
}

.vector-menu-tabs .mw-list-item > a, .mw-article-toolbar-container .vector-menu-dropdown > a, .vector-menu-tabs .mw-list-item .vector-menu-heading, .mw-article-toolbar-container .vector-menu-dropdown .vector-menu-heading {
    border-top-left-radius: 0.25em !important;
    border-top-right-radius: 0.25em !important;
    padding: 0.5em 0.5em 0 0;
    max-height: 3em;
    font-size: 1.1em;
    border-bottom: none;
    transition: background-color 0.2s;
}

.vector-menu-tabs .mw-list-item.selected a, .vector-menu-tabs .mw-list-item.selected a:visited {
    background-color: var(--color-selected) !important;
    color: var(--color-text-darker) !important;
    border-bottom: 2px solid var(--color-fg) !important;
}

.vector-menu-tabs .mw-list-item.new a, .vector-menu-tabs .mw-list-item.new a:visited {
    color: var(--color-red) !important;
}

.vector-menu-tabs .mw-list-item a:focus, .vector-menu-tabs .mw-list-item a:hover {
    background-color: var(--color-hover);
    border-bottom: none;
}

.vector-menu-tabs .mw-list-item a {
    color: var(--color-text-translucent) !important;
    padding: 0.5em 0.5em 0.25em 0.5em;
}

.vector-menu-dropdown .vector-menu-heading:after, .mw-interlanguage-selector:after {
    filter: invert(0.9)
}

/* Content */
.skin-vector-disable-max-width .mw-content-container {
    max-width: none !important;
    width: auto !important;
}

#mw-sidebar-checkbox:not(:checked) ~ .vector-sidebar-container-no-toc ~ .mw-content-container,
.vector-toc-collapsed #mw-sidebar-checkbox:not(:checked) ~ .mw-content-container, .vector-toc-collapsed #mw-sidebar-checkbox:not(:checked) ~ .mw-table-of-contents-container {
    max-width: none;
    padding: 0 0.75em 0 0.75em;
}

.mw-content-container {
    max-width: none;
    margin: 3.5em 0.75em 0 0.75em;
    padding: 0;
}

.mw-body {
    background-color: var(--color-bg-section);
    padding: 0;
    margin: 0;
}

.mw-body h1 {
    padding: 0.2em 0.2em 0.2em 0.3em;
    border-bottom: 2px solid var(--color-primary);
}

.mw-body-content {
    padding: 0 0.5em 0.5em 0.5em;
}

.mw-page-container {
    max-width: 100%;
    padding: 0;
    background-color: var(--color-bg);
}

.catlinks {
    border: none;
    border-top: 1px solid var(--color-border);
    background-color: var(--color-bg-section-light);
    padding: 0.5em;
}

/* Содержание */
#vector-toc-collapsed-button {
    position: fixed;
    padding: 0.5em;
    background-color: var(--color-bg-section);
    border: 1px solid var(--color-border);
    right: 1em;
    bottom: 1em;
    backdrop-filter: blur(12px);
    filter: invert(0);
}

.sidebar-toc {
    max-height: 15em;
    background-color: var(--color-bg-section);
    backdrop-filter: blur(12px);
    border: 1px solid var(--color-border);
    transition: background-color 0.2s;
}

#vector-toc-collapsed-button:hover, #vector-toc-collapsed-button:active {
    background-color: var(--color-bg-section-light);
}

.mw-ui-icon-wikimedia-listBullet:before {
    filter: invert(0.8);
}

.vector-toc-not-collapsed .sidebar-toc:after {
    background: none;
}

/* Footer */
#footer-places {
    margin: 0.25em 0 0 0.5em;
}

#footer-icons {
    padding-right: 0.5em;
}

.mw-footer {
    border: none;
    padding: 0;
}

#mw-sidebar-checkbox:not(:checked) ~ 
.mw-footer-container {
    margin: 0.75em 0 0 0;
}

.mw-footer-container {
    margin: 0.75em 0 0 15.25em;
    padding: 0;
    background-color: var(--color-bg-section);
    color: var(--color-fg);
}

#footer-info li {
    color: var(--color-text-darker);
}

/* Иконки */
.mw-ui-icon {
    filter: invert(1);
}

.mw-ui-button {
    box-shadow: none !important;
    border: none;
}

/* Редактор кода */
.mw-code,
.mw-editform #wpTextbox1 {
    background-color: var(--color-bg-section-light);
    color: var(--color-fg);
    border: 1px solid var(--color-border);
}

.mw-editform #wpTextbox1 {
    background-color: var(--color-bg-section);
}

.mw-editform #wpTextbox1:focus {
    outline: none;
    border: 1px solid var(--color-border-input);
}

.editOptions {
    background-color: var(--color-bg-section-light);
    color: var(--color-text);
    border: 1px solid var(--color-border);
    border-top: 0;
}

.oo-ui-textInputWidget .oo-ui-inputWidget-input {
    background-color: var(--color-bg-section);
    color: var(--color-text);
    border: 1px solid var(--color-border);
}

.oo-ui-textInputWidget.oo-ui-widget-enabled:hover .oo-ui-inputWidget-input {
    border-color: var(--color-border-input)
}

.oo-ui-textInputWidget.oo-ui-widget-enabled .oo-ui-inputWidget-input:focus {
    border: 1px solid var(--color-border-input);
    box-shadow: inset 0 0 0 1px var(--color-border-input);
}

.oo-ui-textInputWidget.oo-ui-widget-enabled:hover .oo-ui-inputWidget-input:focus {
    border: 1px solid var(--color-border-input);
}

.mw-continue-editing {
    float: right;
    line-height: 1.667em;
    padding: 0 0.5em;
    border-radius: var(--border-radius-tiny);
    background-color: var(--color-primary);
    transition: background-color 0.2s;
}

.mw-continue-editing:hover {
    background-color: var(--color-primary-light);
}

.mw-continue-editing a {
    color: var(--color-text) !important;
    text-decoration: none;
}

.wikiEditor-ui .wikiEditor-ui-view {
    border: 1px solid var(--color-border);
    border-bottom: none;
}

.wikiEditor-ui-toolbar {
    background-color: var(--color-bg-section-light);
}

.wikiEditor-ui .wikiEditor-ui-top {
    border-bottom: none;
}

.wikiEditor-ui-toolbar .group {
    border-right: 1px solid var(--color-border);
}

.tool.oo-ui-buttonElement-frameless.oo-ui-iconElement > .oo-ui-buttonElement-button > .oo-ui-iconElement-icon {
    filter: invert(0.9);
}

/* Предупреждение */
.mw-message-box-warning {
    padding: 0.33em 0.5em;
    margin: 0.5em 0 0.5em 0;
    color: white;
    background-color: #bb9b68;
    background-image: repeating-linear-gradient(
        -45deg,
        transparent,
        transparent 10px,
        rgba(0, 0, 0, 0.1) 10px,
        rgba(0, 0, 0, 0.1) 20px
    );
    border: none;
}

/* Размеры под разные экраны */
@media screen and (min-width: 1200px) {
    .mw-page-container-inner {
        grid-template-columns: 245px 0 !important;
        min-height: 100vh !important;
    }
}

@media screen and (min-width: 1000px) {
    .mw-page-container-inner {
        grid-template-columns: 245px 0;
        min-height: 100vh;
    }
}

@media screen and (min-width: 720px) {
    .mw-page-container-inner {
        grid-template-columns: 220px 0;
        min-height: 100vh;
    }
}

/* Кастомный скроллбар */
::-webkit-scrollbar {
    width: 1em;
    background-color: #191919;
}

::-webkit-scrollbar-thumb {
    background-color: #3b3b3b;
}

::-webkit-scrollbar-thumb:hover {
    background-color: #4d4d4d;;
}

/* Окна подтверждения */
.oo-ui-panelLayout-framed {
    background-color: var(--color-bg-section-light);
    border: 1px solid var(--color-border);
    border-radius: var(--border-radius-medium);
}