미디어위키:Gadget-Vector.css: 두 판 사이의 차이

식물 vs 좀비 위키
둘러보기로 이동 검색으로 이동
Brokey (토론)의 350 판 편집을 되돌림
태그: 편집 취소
편집 요약 없음
1번째 줄: 1번째 줄:
/*
@font-face {
* Vector 2010 인터페이스 디자인
        font-family: "PVZ SB Aggro B";
* 적용 위치: 미디어위키:Gadget-vector.css
        src: url("/wiki/Special:Redirect/file/SB_Aggro_B.ttf") format("truetype");
*
        font-display: swap;
* 기존 UI의 배치·크기·기능은 유지하고
* 배경, 색상, 테두리, 그림자와 상태 표현만 변경한다.
*/
 
 
/* 기본 색상 */
body.skin-vector-legacy {
--pvz-ui-background-image:
url("/wiki/Special:Redirect/file/Wiki_Bg_Light.png");
 
--pvz-ui-overlay-top:
rgba(247, 239, 231, 0.3);
 
--pvz-ui-overlay-bottom:
rgba(232, 216, 205, 0.76);
 
--pvz-ui-page: #eee3da;
--pvz-ui-page-deep: rgba(224, 207, 196, 0.78);
 
--pvz-ui-surface:
rgba(255, 252, 249, 0.97);
 
--pvz-ui-surface-soft:
rgba(248, 241, 236, 0.95);
 
--pvz-ui-surface-muted:
rgba(235, 221, 212, 0.95);
 
--pvz-ui-surface-strong:
rgba(220, 198, 185, 0.96);
 
--pvz-ui-border: #c8aea1;
--pvz-ui-border-soft: rgba(170, 137, 121, 0.38);
--pvz-ui-border-strong: #9b7463;
 
--pvz-ui-accent: #775145;
--pvz-ui-accent-hover: #684238;
--pvz-ui-accent-active: #56362d;
--pvz-ui-accent-soft: #dec5b8;
 
--pvz-ui-text: #49362f;
--pvz-ui-text-muted: #77635c;
--pvz-ui-heading: #3e2d27;
 
--pvz-ui-link: #7c4439;
--pvz-ui-link-hover: #a14f40;
--pvz-ui-link-visited: #70516a;
 
--pvz-ui-focus: #ad6a57;
 
--pvz-ui-shadow:
rgba(72, 43, 34, 0.12);
 
--pvz-ui-shadow-strong:
rgba(72, 43, 34, 0.2);
 
--pvz-ui-error-border: #b96860;
--pvz-ui-error-background: #f8e5e2;
 
--pvz-ui-warning-border: #c29a5e;
--pvz-ui-warning-background: #f8eedc;
 
--pvz-ui-success-border: #849b76;
--pvz-ui-success-background: #e9f1e5;
 
background-color: var(--pvz-ui-page);
background-image:
linear-gradient(
180deg,
var(--pvz-ui-overlay-top) 0%,
var(--pvz-ui-overlay-bottom) 100%
),
var(--pvz-ui-background-image);
background-repeat: no-repeat;
background-position: center top;
background-size: cover;
background-attachment: fixed;
color: var(--pvz-ui-text);
}
 
 
/* 공통 링크 */
body.skin-vector-legacy a {
color: var(--pvz-ui-link);
transition:
color 0.14s ease,
background-color 0.14s ease,
border-color 0.14s ease;
}
 
body.skin-vector-legacy a:visited {
color: var(--pvz-ui-link-visited);
}
 
body.skin-vector-legacy a:hover,
body.skin-vector-legacy a:focus {
color: var(--pvz-ui-link-hover);
}
 
 
/* 공통 포커스 */
body.skin-vector-legacy a:focus,
body.skin-vector-legacy button:focus,
body.skin-vector-legacy input:focus,
body.skin-vector-legacy select:focus,
body.skin-vector-legacy textarea:focus {
outline-color: var(--pvz-ui-focus);
}
 
 
/* 페이지 상단 바탕 */
body.skin-vector-legacy #mw-page-base {
background-color: transparent;
background-image:
linear-gradient(
180deg,
var(--pvz-ui-page-deep) 0%,
rgba(255, 255, 255, 0) 100%
);
}
 
body.skin-vector-legacy #mw-head-base {
background: transparent;
}
 
 
/* 본문창 */
body.skin-vector-legacy #content,
body.skin-vector-legacy .mw-body {
border-color: var(--pvz-ui-border-strong);
border-radius: 10px 0 0 10px;
background: var(--pvz-ui-surface);
color: var(--pvz-ui-text);
box-shadow:
0 5px 18px var(--pvz-ui-shadow),
inset 0 1px 0 rgba(255, 255, 255, 0.5);
}
 
body.skin-vector-legacy .mw-body-content {
color: var(--pvz-ui-text);
}
 
 
/* 제목 */
body.skin-vector-legacy .mw-body-content h1,
body.skin-vector-legacy .mw-body-content h2,
body.skin-vector-legacy .mw-body-content h3,
body.skin-vector-legacy .mw-body-content h4,
body.skin-vector-legacy .mw-body-content h5,
body.skin-vector-legacy .mw-body-content h6,
body.skin-vector-legacy #firstHeading {
color: var(--pvz-ui-heading);
border-color: var(--pvz-ui-border);
}
 
body.skin-vector-legacy #firstHeading {
text-shadow:
0 1px 0
rgba(255, 255, 255, 0.45);
}
 
 
/* 로고 */
body.skin-vector-legacy #p-logo a,
body.skin-vector-legacy .mw-wiki-logo {
filter:
drop-shadow(
0 3px 5px
rgba(65, 39, 31, 0.2)
);
}
 
 
/* 좌측 사이드바 */
body.skin-vector-legacy #mw-panel {
color: var(--pvz-ui-text);
}
 
body.skin-vector-legacy #mw-panel .portal h3,
body.skin-vector-legacy
#mw-panel
.vector-menu-heading {
color: var(--pvz-ui-heading);
text-shadow:
0 1px 0
rgba(255, 255, 255, 0.42);
}
 
body.skin-vector-legacy
#mw-panel
.portal
.body,
body.skin-vector-legacy
#mw-panel
.vector-menu-content {
border: 1px solid var(--pvz-ui-border-soft);
border-radius: 8px;
background: var(--pvz-ui-surface-soft);
box-shadow:
0 2px 8px
rgba(72, 43, 34, 0.07),
inset 0 1px 0
rgba(255, 255, 255, 0.42);
}
 
body.skin-vector-legacy
#mw-panel
.portal
.body
li
a,
body.skin-vector-legacy
#mw-panel
.vector-menu-content
li
a {
color: var(--pvz-ui-link);
}
 
body.skin-vector-legacy
#mw-panel
.portal
.body
li
a:hover,
body.skin-vector-legacy
#mw-panel
.vector-menu-content
li
a:hover {
color: var(--pvz-ui-link-hover);
}
 
 
/* 상단 개인 메뉴 */
body.skin-vector-legacy #p-personal,
body.skin-vector-legacy #p-personal a,
body.skin-vector-legacy #p-personal li {
color: var(--pvz-ui-text-muted);
}
 
body.skin-vector-legacy #p-personal a:hover {
color: var(--pvz-ui-link-hover);
}
 
 
/* 상단 탭 배경 제거 */
body.skin-vector-legacy .vector-menu-tabs,
body.skin-vector-legacy .vector-menu-tabs-legacy,
body.skin-vector-legacy #left-navigation,
body.skin-vector-legacy #right-navigation,
body.skin-vector-legacy .vector-menu-tabs ul,
body.skin-vector-legacy
.vector-menu-tabs-legacy
ul {
background-image: none;
}
 
 
/* 기본 탭 */
body.skin-vector-legacy .vector-menu-tabs li,
body.skin-vector-legacy
.vector-menu-tabs-legacy
li {
border-color: var(--pvz-ui-border);
background-color: var(--pvz-ui-surface-muted);
background-image: none;
transition:
background-color 0.14s ease,
border-color 0.14s ease;
}
 
body.skin-vector-legacy
.vector-menu-tabs
li
a,
body.skin-vector-legacy
.vector-menu-tabs-legacy
li
a {
color: var(--pvz-ui-link);
background-image: none;
text-shadow:
0 1px 0
rgba(255, 255, 255, 0.4);
}
 
body.skin-vector-legacy
.vector-menu-tabs
li:hover,
body.skin-vector-legacy
.vector-menu-tabs-legacy
li:hover {
background-color: var(--pvz-ui-accent-soft);
}
 
 
/* 선택된 탭 */
body.skin-vector-legacy
.vector-menu-tabs
li.selected,
body.skin-vector-legacy
.vector-menu-tabs-legacy
li.selected {
border-color: var(--pvz-ui-border-strong);
background-color: var(--pvz-ui-surface);
background-image: none;
}
}


body.skin-vector-legacy
@font-face {
.vector-menu-tabs
        font-family: "PVZ SB Aggro M";
li.selected
        src: url("/wiki/Special:Redirect/file/SB_Aggro_M.ttf") format("truetype");
a,
        font-display: swap;
body.skin-vector-legacy
.vector-menu-tabs-legacy
li.selected
a {
color: var(--pvz-ui-heading);
}
}


 
@font-face {
/* 더보기 버튼 */
        font-family: "PVZ SB Aggro L";
body.skin-vector-legacy
        src: url("/wiki/Special:Redirect/file/SB_Aggro_L.ttf") format("truetype");
.vector-menu-dropdown
        font-display: swap;
.vector-menu-heading,
body.skin-vector-legacy
#p-cactions
.vector-menu-heading {
border-color: var(--pvz-ui-border);
background-color: var(--pvz-ui-surface-muted);
background-image: none;
color: var(--pvz-ui-link);
}
}


body.skin-vector-legacy
body.skin-vector.skin-vector-legacy {
.vector-menu-dropdown
        --pvz-green: #0e6b3f;
.vector-menu-heading:hover,
        --pvz-green-light: #3f8f43;
body.skin-vector-legacy
        --pvz-green-dark: #084c2c;
#p-cactions
        --pvz-brown: #6a2c12;
.vector-menu-heading:hover {
        --pvz-brown-light: #94431d;
background-color: var(--pvz-ui-accent-soft);
        --pvz-paper: #fffbea;
color: var(--pvz-ui-link-hover);
        --pvz-paper-deep: #f2dfbf;
}
        --pvz-paper-note: #ffd191;
        --pvz-text: #3a1a0d;
        --pvz-link: #2f7f3a;
        --pvz-line: #6a2c12;


 
        color: var(--pvz-text);
/* 더보기 메뉴 */
        background-color: #725039;
body.skin-vector-legacy
        background-image: url("/wiki/Special:Redirect/file/Wiki_Bg.png");
.vector-menu-dropdown
        background-position: center top;
.vector-menu-content,
        background-repeat: no-repeat;
body.skin-vector-legacy
        background-size: cover;
#p-cactions
        background-attachment: fixed;
.vector-menu-content {
        font-family: "PVZ SB Aggro L", "Pretendard", "Noto Sans KR", sans-serif;
border-color: var(--pvz-ui-border-strong);
border-radius: 7px;
background: var(--pvz-ui-surface);
box-shadow:
0 6px 18px
var(--pvz-ui-shadow-strong);
}
}


body.skin-vector-legacy
/* Vector 2010의 배치와 기능은 유지하고 표면만 변경 */
.vector-menu-dropdown
body.skin-vector.skin-vector-legacy #mw-page-base {
.vector-menu-content
        background:
a:hover,
                linear-gradient(
body.skin-vector-legacy
                        to bottom,
#p-cactions
                        rgba(75, 35, 18, 0.92),
.vector-menu-content
                        rgba(49, 21, 9, 0.96)
a:hover {
                );
background: var(--pvz-ui-surface-soft);
        border-bottom: 3px solid var(--pvz-brown);
color: var(--pvz-ui-link-hover);
}
}


 
body.skin-vector.skin-vector-legacy #mw-head-base {
/* 검색창 외곽 */
        background: transparent;
body.skin-vector-legacy #simpleSearch,
body.skin-vector-legacy .vector-search-box {
border-color: var(--pvz-ui-border-strong);
border-radius: 7px;
background-color: var(--pvz-ui-surface);
box-shadow:
inset 0 1px 3px
rgba(72, 43, 34, 0.09),
0 1px 0
rgba(255, 255, 255, 0.42);
transition:
border-color 0.16s ease,
box-shadow 0.16s ease,
background-color 0.16s ease;
}
}


 
body.skin-vector.skin-vector-legacy #content {
/* 검색 입력 요소 */
        color: var(--pvz-text);
body.skin-vector-legacy
        background: var(--pvz-paper);
#simpleSearch
        border: 9px solid var(--pvz-brown);
#searchInput,
        border-radius: 18px 0 0 18px;
body.skin-vector-legacy
        box-shadow:
.vector-search-box-input {
                0 14px 28px rgba(38, 17, 5, 0.28),
border: 0;
                inset 0 0 0 8px #e6d2b4;
border-radius: 0;
outline: 0;
background: transparent;
color: var(--pvz-ui-text);
box-shadow: none;
}
}


 
body.skin-vector.skin-vector-legacy .mw-body-content {
/* 검색창 포커스 */
        color: var(--pvz-text);
body.skin-vector-legacy
#simpleSearch:focus-within,
body.skin-vector-legacy
.vector-search-box:focus-within {
border-color: var(--pvz-ui-focus);
box-shadow:
0 0 0 2px
rgba(173, 106, 87, 0.18),
inset 0 1px 3px
rgba(72, 43, 34, 0.07);
}
}


 
body.skin-vector.skin-vector-legacy a {
/* 검색 버튼 */
        color: var(--pvz-link);
body.skin-vector-legacy #searchButton,
body.skin-vector-legacy #mw-searchButton,
body.skin-vector-legacy .searchButton {
border-color: var(--pvz-ui-border-strong);
border-radius: 0 6px 6px 0;
background-color: var(--pvz-ui-surface-muted);
background-image: none;
color: var(--pvz-ui-accent);
box-shadow: none;
}
}


body.skin-vector-legacy #searchButton:hover,
body.skin-vector.skin-vector-legacy a:visited {
body.skin-vector-legacy #mw-searchButton:hover,
        color: #3c7f3a;
body.skin-vector-legacy .searchButton:hover {
background-color: var(--pvz-ui-accent-soft);
}
}


 
body.skin-vector.skin-vector-legacy a:hover,
/* 일반 버튼 */
body.skin-vector.skin-vector-legacy a:focus {
body.skin-vector-legacy button,
        color: var(--pvz-green-dark);
body.skin-vector-legacy input[type="button"],
body.skin-vector-legacy input[type="submit"],
body.skin-vector-legacy input[type="reset"],
body.skin-vector-legacy .mw-ui-button,
body.skin-vector-legacy .cdx-button,
body.skin-vector-legacy
.oo-ui-buttonElement-button {
border-color: var(--pvz-ui-border-strong);
border-radius: 6px;
background-color: var(--pvz-ui-surface-muted);
background-image: none;
color: var(--pvz-ui-heading);
box-shadow:
0 1px 2px
rgba(72, 43, 34, 0.1);
transition:
border-color 0.14s ease,
background-color 0.14s ease,
color 0.14s ease,
box-shadow 0.14s ease;
}
}


body.skin-vector-legacy button:hover,
/* 문서 제목을 PvZ 녹색 리본처럼 표현 */
body.skin-vector-legacy
body.skin-vector.skin-vector-legacy #firstHeading {
input[type="button"]:hover,
        display: table;
body.skin-vector-legacy
        max-width: calc(100% - 18px);
input[type="submit"]:hover,
        margin: 0 0 1.2rem -9px;
body.skin-vector-legacy
        padding: 0.28em 2.2em 0.28em 0.65em;
input[type="reset"]:hover,
        color: #fff;
body.skin-vector-legacy .mw-ui-button:hover,
        background: var(--pvz-green);
body.skin-vector-legacy .cdx-button:hover,
        border: 0;
body.skin-vector-legacy
        clip-path: polygon(0 0, 100% 0, calc(100% - 32px) 100%, 0 100%);
.oo-ui-buttonElement-button:hover {
        font-family: "PVZ SB Aggro B", "SB Aggro B", sans-serif;
border-color: var(--pvz-ui-accent);
        font-weight: normal;
background-color: var(--pvz-ui-accent-soft);
        letter-spacing: -0.045em;
color: var(--pvz-ui-heading);
        text-shadow:
                #245d33 2px 0 0,
                #245d33 -2px 0 0,
                #245d33 0 2px 0,
                #245d33 0 -2px 0;
}
}


body.skin-vector-legacy button:active,
body.skin-vector.skin-vector-legacy .mw-body h2,
body.skin-vector-legacy
body.skin-vector.skin-vector-legacy .mw-body h3,
input[type="button"]:active,
body.skin-vector.skin-vector-legacy .mw-body h4,
body.skin-vector-legacy
body.skin-vector.skin-vector-legacy .mw-body h5,
input[type="submit"]:active,
body.skin-vector.skin-vector-legacy .mw-body h6 {
body.skin-vector-legacy
        color: #215a31;
.mw-ui-button:active,
        border-color: rgba(106, 44, 18, 0.35);
body.skin-vector-legacy
        font-family: "PVZ SB Aggro M", "SB Aggro M", sans-serif;
.cdx-button:active,
        font-weight: normal;
body.skin-vector-legacy
.oo-ui-buttonElement-button:active {
background-color: var(--pvz-ui-surface-strong);
box-shadow:
inset 0 1px 3px
rgba(72, 43, 34, 0.15);
}
}


 
/* 왼쪽 기본 Vector 메뉴 */
/* 주요 동작 버튼 */
body.skin-vector.skin-vector-legacy #mw-panel {
body.skin-vector-legacy .mw-ui-progressive,
        color: var(--pvz-text);
body.skin-vector-legacy
        background:
.mw-ui-button.mw-ui-progressive,
                linear-gradient(
body.skin-vector-legacy
                        to bottom,
.cdx-button--action-progressive,
                        rgba(148, 67, 29, 0.98),
body.skin-vector-legacy
                        rgba(112, 43, 15, 0.98)
.oo-ui-flaggedElement-progressive
                );
> .oo-ui-buttonElement-button {
        border: 3px solid var(--pvz-green);
border-color: var(--pvz-ui-accent-active);
        border-radius: 10px;
background-color: var(--pvz-ui-accent);
        box-shadow:
color: #fffaf7;
                0 10px 24px rgba(0, 0, 0, 0.28),
                inset 0 0 20px rgba(70, 26, 10, 0.34);
}
}


body.skin-vector-legacy
body.skin-vector.skin-vector-legacy #p-logo {
.mw-ui-progressive:hover,
        background: rgba(86, 34, 12, 0.82);
body.skin-vector-legacy
        border: 2px solid #55200b;
.mw-ui-button.mw-ui-progressive:hover,
        border-radius: 8px;
body.skin-vector-legacy
        box-shadow: inset 0 5px 12px rgba(0, 0, 0, 0.26);
.cdx-button--action-progressive:hover,
body.skin-vector-legacy
.oo-ui-flaggedElement-progressive
> .oo-ui-buttonElement-button:hover {
background-color: var(--pvz-ui-accent-hover);
color: #ffffff;
}
}


 
body.skin-vector.skin-vector-legacy #mw-panel .vector-menu-portal {
/* 위험 동작 버튼 */
        margin-right: 0.55em;
body.skin-vector-legacy .mw-ui-destructive,
        margin-left: 0.55em;
body.skin-vector-legacy
        padding: 0.45em;
.cdx-button--action-destructive,
        background: transparent;
body.skin-vector-legacy
.oo-ui-flaggedElement-destructive
> .oo-ui-buttonElement-button {
border-color: #78322d;
background-color: #984039;
color: #ffffff;
}
}


 
body.skin-vector.skin-vector-legacy #mw-panel .vector-menu-heading {
/* 일반 입력 요소 */
        color: #d5ad45;
body.skin-vector-legacy
        background: none;
input:not([type="button"]):not(
        border: 0;
[type="submit"]
        font-family: "PVZ SB Aggro M", "SB Aggro M", sans-serif;
):not([type="reset"]):not(
        font-weight: normal;
[type="checkbox"]
        text-align: center;
):not([type="radio"]),
        text-shadow: #3d1a09 1px 1px 0;
body.skin-vector-legacy select,
body.skin-vector-legacy textarea,
body.skin-vector-legacy
.oo-ui-inputWidget-input,
body.skin-vector-legacy
.cdx-text-input__input,
body.skin-vector-legacy .cdx-select {
border-color: var(--pvz-ui-border);
border-radius: 5px;
background-color: var(--pvz-ui-surface);
color: var(--pvz-ui-text);
transition:
border-color 0.15s ease,
box-shadow 0.15s ease,
background-color 0.15s ease;
}
}


body.skin-vector-legacy
body.skin-vector.skin-vector-legacy #mw-panel .vector-menu-content {
input:not([type="button"]):not(
        padding: 0.55em 0.7em;
[type="submit"]
        background: var(--pvz-paper-note);
):not([type="reset"]):not(
        border: 2px solid #5c2b12;
[type="checkbox"]
        border-radius: 5px;
):not([type="radio"]):hover,
        box-shadow:
body.skin-vector-legacy select:hover,
                0 5px 9px rgba(38, 17, 5, 0.3),
body.skin-vector-legacy textarea:hover,
                inset 0 1px 0 rgba(255, 255, 255, 0.35);
body.skin-vector-legacy
.oo-ui-inputWidget-input:hover,
body.skin-vector-legacy
.cdx-text-input__input:hover,
body.skin-vector-legacy .cdx-select:hover {
border-color: var(--pvz-ui-border-strong);
}
}


body.skin-vector-legacy
body.skin-vector.skin-vector-legacy #mw-panel .vector-menu-content li a {
input:not([type="button"]):not(
        color: #302839;
[type="submit"]
):not([type="reset"]):not(
[type="checkbox"]
):not([type="radio"]):focus,
body.skin-vector-legacy select:focus,
body.skin-vector-legacy textarea:focus,
body.skin-vector-legacy
.oo-ui-inputWidget-input:focus,
body.skin-vector-legacy
.cdx-text-input__input:focus,
body.skin-vector-legacy .cdx-select:focus {
border-color: var(--pvz-ui-focus);
box-shadow:
0 0 0 2px
rgba(173, 106, 87, 0.16);
}
}


body.skin-vector-legacy
body.skin-vector.skin-vector-legacy #mw-panel .vector-menu-content li a:hover,
input[type="checkbox"],
body.skin-vector.skin-vector-legacy #mw-panel .vector-menu-content li a:focus {
body.skin-vector-legacy
        color: var(--pvz-green);
input[type="radio"] {
        background: rgba(255, 250, 230, 0.35);
accent-color: var(--pvz-ui-accent);
        text-decoration: none;
}
}


 
/* Vector의 기존 탭 위치와 동작 유지 */
/* 목차·분류 */
body.skin-vector.skin-vector-legacy .vector-menu-tabs-legacy,
body.skin-vector-legacy #toc,
body.skin-vector.skin-vector-legacy .vector-menu-tabs-legacy ul,
body.skin-vector-legacy .toc,
body.skin-vector.skin-vector-legacy .vector-menu-tabs-legacy li {
body.skin-vector-legacy .mw-warning,
        background-image: none;
body.skin-vector-legacy .catlinks {
border-color: var(--pvz-ui-border);
border-radius: 8px;
background-color: var(--pvz-ui-surface-soft);
color: var(--pvz-ui-text);
box-shadow:
0 2px 8px
rgba(72, 43, 34, 0.06);
}
}


body.skin-vector-legacy #toc h2,
body.skin-vector.skin-vector-legacy .vector-menu-tabs-legacy li a,
body.skin-vector-legacy .toc h2 {
body.skin-vector.skin-vector-legacy .vector-menu-dropdown .vector-menu-heading {
color: var(--pvz-ui-heading);
        color: #fff;
        background: #7a3b24;
        border: 3px solid var(--pvz-brown);
        border-bottom: 0;
        border-radius: 13px 13px 0 0;
        font-family: "PVZ SB Aggro M", "SB Aggro M", sans-serif;
        text-shadow: #3c1709 1px 1px 0;
}
}


body.skin-vector-legacy .tocnumber {
body.skin-vector.skin-vector-legacy .vector-menu-tabs-legacy li.selected a {
color: var(--pvz-ui-text-muted);
        color: #fff;
        background: #b1847c;
}
}


 
body.skin-vector.skin-vector-legacy .vector-menu-tabs-legacy li a:hover,
/* 표 */
body.skin-vector.skin-vector-legacy .vector-menu-dropdown .vector-menu-heading:hover {
body.skin-vector-legacy table.wikitable,
        background: var(--pvz-green);
body.skin-vector-legacy .wikitable {
        text-decoration: none;
border-color: var(--pvz-ui-border-strong);
background-color: var(--pvz-ui-surface);
color: var(--pvz-ui-text);
}
}


body.skin-vector-legacy
body.skin-vector.skin-vector-legacy .vector-menu-dropdown .vector-menu-content {
table.wikitable
        color: var(--pvz-text);
> tr
        background: var(--pvz-paper-note);
> th,
        border: 2px solid var(--pvz-brown);
body.skin-vector-legacy
        border-radius: 7px;
table.wikitable
        box-shadow: 0 10px 24px rgba(47, 22, 8, 0.24);
> *
> tr
> th,
body.skin-vector-legacy
.wikitable
> tr
> th,
body.skin-vector-legacy
.wikitable
> *
> tr
> th {
border-color: var(--pvz-ui-border);
background-color: var(--pvz-ui-surface-muted);
color: var(--pvz-ui-heading);
}
}


body.skin-vector-legacy
body.skin-vector.skin-vector-legacy .vector-menu-dropdown .vector-menu-content a {
table.wikitable
        color: var(--pvz-text);
> tr
> td,
body.skin-vector-legacy
table.wikitable
> *
> tr
> td,
body.skin-vector-legacy
.wikitable
> tr
> td,
body.skin-vector-legacy
.wikitable
> *
> tr
> td {
border-color: var(--pvz-ui-border);
background-color: var(--pvz-ui-surface);
}
}


 
/* 검색창과 개인 도구 */
/* 코드·인용 */
body.skin-vector.skin-vector-legacy #p-personal a {
body.skin-vector-legacy pre,
        color: #fff8df;
body.skin-vector-legacy code,
        text-shadow: #2d1308 1px 1px 0;
body.skin-vector-legacy .mw-code {
border-color: var(--pvz-ui-border);
background-color: var(--pvz-ui-surface-soft);
color: var(--pvz-ui-text);
}
}


body.skin-vector-legacy blockquote {
body.skin-vector.skin-vector-legacy #simpleSearch {
border-left-color: var(--pvz-ui-accent-soft);
        background: #fff8ed;
background-color: var(--pvz-ui-surface-soft);
        border: 2px solid var(--pvz-green-dark);
color: var(--pvz-ui-text);
        border-radius: 3px;
        box-shadow: inset 0 1px 3px rgba(47, 22, 8, 0.18);
}
}


 
body.skin-vector.skin-vector-legacy #simpleSearch input {
/* 공통 메시지 */
        color: var(--pvz-text);
body.skin-vector-legacy .mw-message-box,
        background: transparent;
body.skin-vector-legacy .messagebox,
body.skin-vector-legacy .errorbox,
body.skin-vector-legacy .successbox,
body.skin-vector-legacy .warningbox {
border-color: var(--pvz-ui-border-strong);
border-radius: 7px;
background-color: var(--pvz-ui-surface-soft);
color: var(--pvz-ui-text);
}
}


 
/* 기본 Vector 콘텐츠 구성요소 */
/* 오류 메시지 */
body.skin-vector.skin-vector-legacy .toc,
body.skin-vector-legacy
body.skin-vector.skin-vector-legacy .catlinks,
.mw-message-box-error,
body.skin-vector.skin-vector-legacy .mw-warning,
body.skin-vector-legacy .errorbox {
body.skin-vector.skin-vector-legacy .mw-message-box {
border-color: var(--pvz-ui-error-border);
        color: var(--pvz-text);
background-color: var(--pvz-ui-error-background);
        background: var(--pvz-paper-deep);
        border: 1px solid rgba(106, 44, 18, 0.45);
        border-radius: 5px;
}
}


 
body.skin-vector.skin-vector-legacy table.wikitable {
/* 경고 메시지 */
        color: var(--pvz-text);
body.skin-vector-legacy
        background: #fff8e7;
.mw-message-box-warning,
        border-color: #7a4a28;
body.skin-vector-legacy .warningbox {
border-color: var(--pvz-ui-warning-border);
background-color: var(--pvz-ui-warning-background);
}
}


 
body.skin-vector.skin-vector-legacy table.wikitable > tr > th,
/* 성공 메시지 */
body.skin-vector.skin-vector-legacy table.wikitable > * > tr > th {
body.skin-vector-legacy
        color: #fff;
.mw-message-box-success,
        background: var(--pvz-green);
body.skin-vector-legacy .successbox {
        border-color: #6a2c12;
border-color: var(--pvz-ui-success-border);
background-color: var(--pvz-ui-success-background);
}
}


 
body.skin-vector.skin-vector-legacy table.wikitable > tr > td,
/* 편집 화면 */
body.skin-vector.skin-vector-legacy table.wikitable > * > tr > td {
body.skin-vector-legacy
        border-color: #b78c66;
.wikiEditor-ui-toolbar,
body.skin-vector-legacy .wikiEditor-ui-top,
body.skin-vector-legacy .wikiEditor-ui-view,
body.skin-vector-legacy .editOptions {
border-color: var(--pvz-ui-border);
background-color: var(--pvz-ui-surface-soft);
}
}


body.skin-vector-legacy
body.skin-vector.skin-vector-legacy .thumbinner,
.wikiEditor-ui-toolbar
body.skin-vector.skin-vector-legacy figure,
.group,
body.skin-vector.skin-vector-legacy .gallerybox .thumb {
body.skin-vector-legacy
        background: transparent;
.wikiEditor-ui-toolbar
        border-color: #8a654b;
.section {
border-color: var(--pvz-ui-border);
}
}


 
body.skin-vector.skin-vector-legacy .thumbcaption,
/* 검색 결과 */
body.skin-vector.skin-vector-legacy figcaption,
body.skin-vector-legacy
body.skin-vector.skin-vector-legacy .gallerytext {
.mw-search-result-heading
        background: #ecd8c7;
a,
        color: var(--pvz-text);
body.skin-vector-legacy
.mw-specialpage-summary
a {
color: var(--pvz-ui-link);
}
}


body.skin-vector-legacy
/* 기본 footer 배치 유지 */
.mw-search-result-data,
body.skin-vector.skin-vector-legacy #footer {
body.skin-vector-legacy .searchresult,
        color: var(--pvz-text);
body.skin-vector-legacy
        background: #f2dfbf;
.mw-search-profile-tabs {
        border-top: 1px solid rgba(75, 42, 24, 0.3);
color: var(--pvz-ui-text-muted);
        box-shadow: 0 -5px 16px rgba(0, 0, 0, 0.08);
}
}


 
body.skin-vector.skin-vector-legacy #footer a {
/* 특수 문서 표면 */
        color: var(--pvz-link);
body.skin-vector-legacy
.mw-search-profile-tabs,
body.skin-vector-legacy
.mw-pager-navigation-bar,
body.skin-vector-legacy .TablePager_nav,
body.skin-vector-legacy
.mw-changeslist-legend,
body.skin-vector-legacy
.mw-rcfilters-ui-filterWrapperWidget,
body.skin-vector-legacy
.mw-rcfilters-ui-changesListWrapperWidget {
border-color: var(--pvz-ui-border);
border-radius: 8px;
background-color: var(--pvz-ui-surface-soft);
color: var(--pvz-ui-text);
}
 
 
/* 팝업·OOUI·Codex 메뉴 */
body.skin-vector-legacy
.oo-ui-popupWidget-popup,
body.skin-vector-legacy
.oo-ui-menuSelectWidget,
body.skin-vector-legacy .cdx-menu,
body.skin-vector-legacy
.cdx-dialog__body,
body.skin-vector-legacy
.cdx-dialog__header,
body.skin-vector-legacy
.cdx-dialog__footer {
border-color: var(--pvz-ui-border-strong);
background-color: var(--pvz-ui-surface);
color: var(--pvz-ui-text);
box-shadow:
0 7px 22px
var(--pvz-ui-shadow-strong);
}
 
body.skin-vector-legacy
.oo-ui-optionWidget-highlighted,
body.skin-vector-legacy
.oo-ui-optionWidget-selected,
body.skin-vector-legacy
.cdx-menu-item:hover,
body.skin-vector-legacy
.cdx-menu-item--selected {
background-color: var(--pvz-ui-surface-muted);
color: var(--pvz-ui-heading);
}
 
 
/* 푸터 */
body.skin-vector-legacy #footer {
color: var(--pvz-ui-text-muted);
}
 
body.skin-vector-legacy #footer a {
color: var(--pvz-ui-link);
}
 
body.skin-vector-legacy #footer-info,
body.skin-vector-legacy #footer-places {
border-color: var(--pvz-ui-border);
}
 
 
/* 텍스트 선택 */
body.skin-vector-legacy ::selection {
background: #d8b2a3;
color: #33231e;
}
 
 
/* 수동 다크 모드 */
html.skin-theme-clientpref-night
body.skin-vector-legacy {
--pvz-ui-background-image:
url("/wiki/Special:Redirect/file/Wiki_Bg_Dark.png");
 
--pvz-ui-overlay-top:
rgba(24, 19, 17, 0.34);
 
--pvz-ui-overlay-bottom:
rgba(22, 17, 15, 0.78);
 
--pvz-ui-page: #241d1a;
--pvz-ui-page-deep: rgba(28, 22, 20, 0.82);
 
--pvz-ui-surface:
rgba(47, 39, 35, 0.97);
 
--pvz-ui-surface-soft:
rgba(57, 47, 43, 0.96);
 
--pvz-ui-surface-muted:
rgba(72, 56, 50, 0.96);
 
--pvz-ui-surface-strong:
rgba(87, 65, 57, 0.97);
 
--pvz-ui-border: #75584e;
--pvz-ui-border-soft: rgba(151, 111, 98, 0.42);
--pvz-ui-border-strong: #9b7366;
 
--pvz-ui-accent: #a56f5e;
--pvz-ui-accent-hover: #c0836f;
--pvz-ui-accent-active: #8c584b;
--pvz-ui-accent-soft: #67483f;
 
--pvz-ui-text: #eaded8;
--pvz-ui-text-muted: #bca9a1;
--pvz-ui-heading: #fff3ed;
 
--pvz-ui-link: #e0a18d;
--pvz-ui-link-hover: #f5b7a3;
--pvz-ui-link-visited: #c8a2c3;
 
--pvz-ui-focus: #d68e78;
 
--pvz-ui-shadow:
rgba(0, 0, 0, 0.26);
 
--pvz-ui-shadow-strong:
rgba(0, 0, 0, 0.42);
 
--pvz-ui-error-border: #a85d56;
--pvz-ui-error-background: #4c302d;
 
--pvz-ui-warning-border: #a98455;
--pvz-ui-warning-background: #493c2b;
 
--pvz-ui-success-border: #718a65;
--pvz-ui-success-background: #34402f;
}
 
 
/* 운영체제 설정을 따르는 다크 모드 */
@media screen and (prefers-color-scheme: dark) {
html.skin-theme-clientpref-os
body.skin-vector-legacy {
--pvz-ui-background-image:
url("/wiki/Special:Redirect/file/Wiki_Bg_Dark.png");
 
--pvz-ui-overlay-top:
rgba(24, 19, 17, 0.34);
 
--pvz-ui-overlay-bottom:
rgba(22, 17, 15, 0.78);
 
--pvz-ui-page: #241d1a;
--pvz-ui-page-deep:
rgba(28, 22, 20, 0.82);
 
--pvz-ui-surface:
rgba(47, 39, 35, 0.97);
 
--pvz-ui-surface-soft:
rgba(57, 47, 43, 0.96);
 
--pvz-ui-surface-muted:
rgba(72, 56, 50, 0.96);
 
--pvz-ui-surface-strong:
rgba(87, 65, 57, 0.97);
 
--pvz-ui-border: #75584e;
--pvz-ui-border-soft:
rgba(151, 111, 98, 0.42);
 
--pvz-ui-border-strong: #9b7366;
 
--pvz-ui-accent: #a56f5e;
--pvz-ui-accent-hover: #c0836f;
--pvz-ui-accent-active: #8c584b;
--pvz-ui-accent-soft: #67483f;
 
--pvz-ui-text: #eaded8;
--pvz-ui-text-muted: #bca9a1;
--pvz-ui-heading: #fff3ed;
 
--pvz-ui-link: #e0a18d;
--pvz-ui-link-hover: #f5b7a3;
--pvz-ui-link-visited: #c8a2c3;
 
--pvz-ui-focus: #d68e78;
 
--pvz-ui-shadow:
rgba(0, 0, 0, 0.26);
 
--pvz-ui-shadow-strong:
rgba(0, 0, 0, 0.42);
 
--pvz-ui-error-border: #a85d56;
--pvz-ui-error-background: #4c302d;
 
--pvz-ui-warning-border: #a98455;
--pvz-ui-warning-background: #493c2b;
 
--pvz-ui-success-border: #718a65;
--pvz-ui-success-background: #34402f;
}
}
}

2026년 7월 27일 (월) 00:30 판

@font-face {
        font-family: "PVZ SB Aggro B";
        src: url("/wiki/Special:Redirect/file/SB_Aggro_B.ttf") format("truetype");
        font-display: swap;
}

@font-face {
        font-family: "PVZ SB Aggro M";
        src: url("/wiki/Special:Redirect/file/SB_Aggro_M.ttf") format("truetype");
        font-display: swap;
}

@font-face {
        font-family: "PVZ SB Aggro L";
        src: url("/wiki/Special:Redirect/file/SB_Aggro_L.ttf") format("truetype");
        font-display: swap;
}

body.skin-vector.skin-vector-legacy {
        --pvz-green: #0e6b3f;
        --pvz-green-light: #3f8f43;
        --pvz-green-dark: #084c2c;
        --pvz-brown: #6a2c12;
        --pvz-brown-light: #94431d;
        --pvz-paper: #fffbea;
        --pvz-paper-deep: #f2dfbf;
        --pvz-paper-note: #ffd191;
        --pvz-text: #3a1a0d;
        --pvz-link: #2f7f3a;
        --pvz-line: #6a2c12;

        color: var(--pvz-text);
        background-color: #725039;
        background-image: url("/wiki/Special:Redirect/file/Wiki_Bg.png");
        background-position: center top;
        background-repeat: no-repeat;
        background-size: cover;
        background-attachment: fixed;
        font-family: "PVZ SB Aggro L", "Pretendard", "Noto Sans KR", sans-serif;
}

/* Vector 2010의 배치와 기능은 유지하고 표면만 변경 */
body.skin-vector.skin-vector-legacy #mw-page-base {
        background:
                linear-gradient(
                        to bottom,
                        rgba(75, 35, 18, 0.92),
                        rgba(49, 21, 9, 0.96)
                );
        border-bottom: 3px solid var(--pvz-brown);
}

body.skin-vector.skin-vector-legacy #mw-head-base {
        background: transparent;
}

body.skin-vector.skin-vector-legacy #content {
        color: var(--pvz-text);
        background: var(--pvz-paper);
        border: 9px solid var(--pvz-brown);
        border-radius: 18px 0 0 18px;
        box-shadow:
                0 14px 28px rgba(38, 17, 5, 0.28),
                inset 0 0 0 8px #e6d2b4;
}

body.skin-vector.skin-vector-legacy .mw-body-content {
        color: var(--pvz-text);
}

body.skin-vector.skin-vector-legacy a {
        color: var(--pvz-link);
}

body.skin-vector.skin-vector-legacy a:visited {
        color: #3c7f3a;
}

body.skin-vector.skin-vector-legacy a:hover,
body.skin-vector.skin-vector-legacy a:focus {
        color: var(--pvz-green-dark);
}

/* 문서 제목을 PvZ 녹색 리본처럼 표현 */
body.skin-vector.skin-vector-legacy #firstHeading {
        display: table;
        max-width: calc(100% - 18px);
        margin: 0 0 1.2rem -9px;
        padding: 0.28em 2.2em 0.28em 0.65em;
        color: #fff;
        background: var(--pvz-green);
        border: 0;
        clip-path: polygon(0 0, 100% 0, calc(100% - 32px) 100%, 0 100%);
        font-family: "PVZ SB Aggro B", "SB Aggro B", sans-serif;
        font-weight: normal;
        letter-spacing: -0.045em;
        text-shadow:
                #245d33 2px 0 0,
                #245d33 -2px 0 0,
                #245d33 0 2px 0,
                #245d33 0 -2px 0;
}

body.skin-vector.skin-vector-legacy .mw-body h2,
body.skin-vector.skin-vector-legacy .mw-body h3,
body.skin-vector.skin-vector-legacy .mw-body h4,
body.skin-vector.skin-vector-legacy .mw-body h5,
body.skin-vector.skin-vector-legacy .mw-body h6 {
        color: #215a31;
        border-color: rgba(106, 44, 18, 0.35);
        font-family: "PVZ SB Aggro M", "SB Aggro M", sans-serif;
        font-weight: normal;
}

/* 왼쪽 기본 Vector 메뉴 */
body.skin-vector.skin-vector-legacy #mw-panel {
        color: var(--pvz-text);
        background:
                linear-gradient(
                        to bottom,
                        rgba(148, 67, 29, 0.98),
                        rgba(112, 43, 15, 0.98)
                );
        border: 3px solid var(--pvz-green);
        border-radius: 10px;
        box-shadow:
                0 10px 24px rgba(0, 0, 0, 0.28),
                inset 0 0 20px rgba(70, 26, 10, 0.34);
}

body.skin-vector.skin-vector-legacy #p-logo {
        background: rgba(86, 34, 12, 0.82);
        border: 2px solid #55200b;
        border-radius: 8px;
        box-shadow: inset 0 5px 12px rgba(0, 0, 0, 0.26);
}

body.skin-vector.skin-vector-legacy #mw-panel .vector-menu-portal {
        margin-right: 0.55em;
        margin-left: 0.55em;
        padding: 0.45em;
        background: transparent;
}

body.skin-vector.skin-vector-legacy #mw-panel .vector-menu-heading {
        color: #d5ad45;
        background: none;
        border: 0;
        font-family: "PVZ SB Aggro M", "SB Aggro M", sans-serif;
        font-weight: normal;
        text-align: center;
        text-shadow: #3d1a09 1px 1px 0;
}

body.skin-vector.skin-vector-legacy #mw-panel .vector-menu-content {
        padding: 0.55em 0.7em;
        background: var(--pvz-paper-note);
        border: 2px solid #5c2b12;
        border-radius: 5px;
        box-shadow:
                0 5px 9px rgba(38, 17, 5, 0.3),
                inset 0 1px 0 rgba(255, 255, 255, 0.35);
}

body.skin-vector.skin-vector-legacy #mw-panel .vector-menu-content li a {
        color: #302839;
}

body.skin-vector.skin-vector-legacy #mw-panel .vector-menu-content li a:hover,
body.skin-vector.skin-vector-legacy #mw-panel .vector-menu-content li a:focus {
        color: var(--pvz-green);
        background: rgba(255, 250, 230, 0.35);
        text-decoration: none;
}

/* Vector의 기존 탭 위치와 동작 유지 */
body.skin-vector.skin-vector-legacy .vector-menu-tabs-legacy,
body.skin-vector.skin-vector-legacy .vector-menu-tabs-legacy ul,
body.skin-vector.skin-vector-legacy .vector-menu-tabs-legacy li {
        background-image: none;
}

body.skin-vector.skin-vector-legacy .vector-menu-tabs-legacy li a,
body.skin-vector.skin-vector-legacy .vector-menu-dropdown .vector-menu-heading {
        color: #fff;
        background: #7a3b24;
        border: 3px solid var(--pvz-brown);
        border-bottom: 0;
        border-radius: 13px 13px 0 0;
        font-family: "PVZ SB Aggro M", "SB Aggro M", sans-serif;
        text-shadow: #3c1709 1px 1px 0;
}

body.skin-vector.skin-vector-legacy .vector-menu-tabs-legacy li.selected a {
        color: #fff;
        background: #b1847c;
}

body.skin-vector.skin-vector-legacy .vector-menu-tabs-legacy li a:hover,
body.skin-vector.skin-vector-legacy .vector-menu-dropdown .vector-menu-heading:hover {
        background: var(--pvz-green);
        text-decoration: none;
}

body.skin-vector.skin-vector-legacy .vector-menu-dropdown .vector-menu-content {
        color: var(--pvz-text);
        background: var(--pvz-paper-note);
        border: 2px solid var(--pvz-brown);
        border-radius: 7px;
        box-shadow: 0 10px 24px rgba(47, 22, 8, 0.24);
}

body.skin-vector.skin-vector-legacy .vector-menu-dropdown .vector-menu-content a {
        color: var(--pvz-text);
}

/* 검색창과 개인 도구 */
body.skin-vector.skin-vector-legacy #p-personal a {
        color: #fff8df;
        text-shadow: #2d1308 1px 1px 0;
}

body.skin-vector.skin-vector-legacy #simpleSearch {
        background: #fff8ed;
        border: 2px solid var(--pvz-green-dark);
        border-radius: 3px;
        box-shadow: inset 0 1px 3px rgba(47, 22, 8, 0.18);
}

body.skin-vector.skin-vector-legacy #simpleSearch input {
        color: var(--pvz-text);
        background: transparent;
}

/* 기본 Vector 콘텐츠 구성요소 */
body.skin-vector.skin-vector-legacy .toc,
body.skin-vector.skin-vector-legacy .catlinks,
body.skin-vector.skin-vector-legacy .mw-warning,
body.skin-vector.skin-vector-legacy .mw-message-box {
        color: var(--pvz-text);
        background: var(--pvz-paper-deep);
        border: 1px solid rgba(106, 44, 18, 0.45);
        border-radius: 5px;
}

body.skin-vector.skin-vector-legacy table.wikitable {
        color: var(--pvz-text);
        background: #fff8e7;
        border-color: #7a4a28;
}

body.skin-vector.skin-vector-legacy table.wikitable > tr > th,
body.skin-vector.skin-vector-legacy table.wikitable > * > tr > th {
        color: #fff;
        background: var(--pvz-green);
        border-color: #6a2c12;
}

body.skin-vector.skin-vector-legacy table.wikitable > tr > td,
body.skin-vector.skin-vector-legacy table.wikitable > * > tr > td {
        border-color: #b78c66;
}

body.skin-vector.skin-vector-legacy .thumbinner,
body.skin-vector.skin-vector-legacy figure,
body.skin-vector.skin-vector-legacy .gallerybox .thumb {
        background: transparent;
        border-color: #8a654b;
}

body.skin-vector.skin-vector-legacy .thumbcaption,
body.skin-vector.skin-vector-legacy figcaption,
body.skin-vector.skin-vector-legacy .gallerytext {
        background: #ecd8c7;
        color: var(--pvz-text);
}

/* 기본 footer 배치 유지 */
body.skin-vector.skin-vector-legacy #footer {
        color: var(--pvz-text);
        background: #f2dfbf;
        border-top: 1px solid rgba(75, 42, 24, 0.3);
        box-shadow: 0 -5px 16px rgba(0, 0, 0, 0.08);
}

body.skin-vector.skin-vector-legacy #footer a {
        color: var(--pvz-link);
}