미디어위키:Gadget-Timeless.css

식물 vs 좀비 위키
Brokey (토론 | 기여)님의 2026년 7월 30일 (목) 23:40 판

참고: 설정을 저장한 후에 바뀐 점을 확인하기 위해서는 브라우저의 캐시를 새로 고쳐야 합니다.

  • 파이어폭스 / 사파리: Shift 키를 누르면서 새로 고침을 클릭하거나, Ctrl-F5 또는 Ctrl-R을 입력 (Mac에서는 ⌘-R)
  • 구글 크롬: Ctrl-Shift-R키를 입력 (Mac에서는 ⌘-Shift-R)
  • 엣지: Ctrl 키를 누르면서 새로 고침을 클릭하거나, Ctrl-F5를 입력.
/* =========================================================
   PvZKRWiki Timeless — 간결한 모바일 중심 디자인
   Timeless의 기능과 기본 UI 구조는 유지하고 외형만 정돈
   ========================================================= */

:root {
	--pvzt-bg: #f5ead7;
	--pvzt-bg-dark: #201913;
	--pvzt-paper: #fffaf0;
	--pvzt-paper-soft: #f8ecd8;
	--pvzt-green: #479745;
	--pvzt-green-dark: #2f6f36;
	--pvzt-green-deep: #17633f;
	--pvzt-brown: #75462d;
	--pvzt-brown-dark: #5b2f1e;
	--pvzt-border: #c9a66d;
	--pvzt-text: #43352d;
	--pvzt-shadow: 0 4px 14px rgba(74, 47, 26, 0.12);
}

/* 전역 배경 */
html {
	min-height: 100% !important;
	background: var(--pvzt-bg) !important;
}

body.skin-timeless {
	position: relative !important;
	min-height: 100vh !important;
	margin: 0 !important;
	background: transparent !important;
	color: var(--pvzt-text) !important;
}

body.skin-timeless::before {
	content: "";
	position: fixed;
	inset: 0;
	z-index: -1;
	pointer-events: none;
	background:
		var(--pvzt-bg)
		url("/wiki/Special:Redirect/file/Wiki_Bg_Light.png")
		center / cover no-repeat;
}

html.skin-theme-clientpref-night body.skin-timeless::before,
html[data-color-mode="dark"] body.skin-timeless::before,
body.skin-theme-clientpref-night.skin-timeless::before,
body[data-color-mode="dark"].skin-timeless::before {
	background:
		var(--pvzt-bg-dark)
		url("/wiki/Special:Redirect/file/Wiki_Bg_Dark.png")
		center / cover no-repeat;
}

@media (prefers-color-scheme: dark) {
	html.skin-theme-clientpref-os body.skin-timeless::before,
	body.skin-theme-clientpref-os.skin-timeless::before,
	html:not(.skin-theme-clientpref-day) body.skin-timeless::before {
		background:
			var(--pvzt-bg-dark)
			url("/wiki/Special:Redirect/file/Wiki_Bg_Dark.png")
			center / cover no-repeat;
	}
}

html.skin-theme-clientpref-day body.skin-timeless::before,
html[data-color-mode="light"] body.skin-timeless::before,
body.skin-theme-clientpref-day.skin-timeless::before,
body[data-color-mode="light"].skin-timeless::before {
	background:
		var(--pvzt-bg)
		url("/wiki/Special:Redirect/file/Wiki_Bg_Light.png")
		center / cover no-repeat;
}

.skin-timeless #mw-content-container,
.skin-timeless #mw-content-block,
.skin-timeless #mw-content-wrapper {
	background: transparent !important;
	background-image: none !important;
	border: 0 !important;
}

/* 상단 헤더 */
.skin-timeless #mw-header-container,
.skin-timeless #mw-header-hack,
.skin-timeless #mw-header-nav-hack {
	background: var(--pvzt-green) !important;
	background-image: none !important;
	border: 0 !important;
	box-shadow: 0 2px 7px rgba(39, 78, 32, 0.18) !important;
}

.skin-timeless #p-logo-text a {
	color: #ffffff !important;
	font-family:
		"SB Aggro B",
		"SB 어그로 B",
		"SB Aggro",
		"SB 어그로",
		sans-serif !important;
	font-variant: normal !important;
	font-weight: 700 !important;
	text-shadow: none !important;
}

.skin-timeless #p-logo-text a:hover {
	text-decoration: none !important;
	opacity: 0.92;
}

.skin-timeless #user-tools,
.skin-timeless #user-tools a,
.skin-timeless #personal > h2,
.skin-timeless #personal > h2 span {
	color: #ffffff !important;
}

.skin-timeless .mw-wiki-logo {
	filter: drop-shadow(0 2px 3px rgba(45, 25, 8, 0.22));
}

/* 메뉴 버튼 */
.skin-timeless #mw-site-navigation > h2,
.skin-timeless #mw-related-navigation > h2,
.skin-timeless #personal > h2 {
	background: #fffaf0 !important;
	background-image: none !important;
	border: 1px solid var(--pvzt-green-dark) !important;
	border-radius: 10px !important;
	box-shadow: none !important;
	transition:
		background-color 120ms ease,
		transform 120ms ease;
}

.skin-timeless #mw-site-navigation > h2:hover,
.skin-timeless #mw-related-navigation > h2:hover,
.skin-timeless #personal > h2:hover {
	background: #fffdf7 !important;
	transform: translateY(-1px);
}

.skin-timeless .pokey {
	border-bottom-color: var(--pvzt-brown-dark) !important;
}

/* 메뉴 패널 */
.skin-timeless #mw-site-navigation .sidebar-inner,
.skin-timeless #mw-related-navigation .sidebar-inner,
.skin-timeless #personal .dropdown {
	border: 1px solid var(--pvzt-brown-dark) !important;
	border-radius: 12px !important;
	background: #8e4527 !important;
	background-image: none !important;
	box-shadow: 0 6px 18px rgba(63, 24, 8, 0.2) !important;
}

.skin-timeless #mw-site-navigation .sidebar-inner h2,
.skin-timeless #mw-site-navigation .sidebar-inner h3,
.skin-timeless #mw-related-navigation .sidebar-inner h2,
.skin-timeless #mw-related-navigation .sidebar-inner h3,
.skin-timeless #personal .dropdown h3 {
	margin-bottom: 0.35rem !important;
	border: 0 !important;
	background: transparent !important;
	color: #f4cf75 !important;
	font-family:
		"SB Aggro M",
		"SB 어그로 M",
		"SB Aggro",
		"SB 어그로",
		sans-serif !important;
	font-weight: 500 !important;
	text-align: center !important;
	text-shadow: none !important;
}

.skin-timeless #mw-site-navigation .sidebar-inner .mw-portlet ul,
.skin-timeless #mw-related-navigation .sidebar-inner .mw-portlet ul,
.skin-timeless #personal .dropdown ul {
	margin: 0 0 0.45rem !important;
	padding: 0.55rem 0.62rem !important;
	border: 1px solid #7a381f !important;
	border-radius: 8px !important;
	background: #f7c88e !important;
	background-image: none !important;
	box-shadow: none !important;
	list-style: none !important;
	transform: none !important;
}

.skin-timeless #mw-site-navigation .sidebar-inner .mw-portlet li,
.skin-timeless #mw-related-navigation .sidebar-inner .mw-portlet li,
.skin-timeless #personal .dropdown li {
	margin: 0 !important;
	padding: 0 !important;
	list-style: none !important;
}

.skin-timeless #mw-site-navigation .sidebar-inner .mw-portlet li + li,
.skin-timeless #mw-related-navigation .sidebar-inner .mw-portlet li + li,
.skin-timeless #personal .dropdown li + li {
	margin-top: 0.2rem !important;
}

.skin-timeless #mw-site-navigation .sidebar-inner .mw-portlet ul a,
.skin-timeless #mw-related-navigation .sidebar-inner .mw-portlet ul a,
.skin-timeless #personal .dropdown ul a {
	display: block !important;
	padding: 0.14rem 0.16rem !important;
	color: #3b3950 !important;
	font-family:
		"SB Aggro L",
		"SB 어그로 L",
		"SB Aggro",
		"SB 어그로",
		sans-serif !important;
	font-size: 0.8rem !important;
	font-weight: 300 !important;
	line-height: 1.4 !important;
	text-decoration: none !important;
}

.skin-timeless #mw-site-navigation .sidebar-inner .mw-portlet ul a:hover,
.skin-timeless #mw-related-navigation .sidebar-inner .mw-portlet ul a:hover,
.skin-timeless #personal .dropdown ul a:hover {
	color: #5b3d2f !important;
	text-decoration: underline !important;
}

.skin-timeless .sidebar-inner .emptyPortlet {
	display: none !important;
}

/* 검색창 */
.skin-timeless #simpleSearch {
	overflow: hidden;
	border: 1px solid #4b7652 !important;
	border-radius: 10px !important;
	background: #ffffff !important;
	background-image: none !important;
	box-shadow: none !important;
}

.skin-timeless #simpleSearch:focus-within {
	border-color: var(--pvzt-green-deep) !important;
	box-shadow: 0 0 0 3px rgba(71, 151, 69, 0.13) !important;
}

.skin-timeless #searchInput {
	border: 0 !important;
	outline: 0 !important;
	background: transparent !important;
	color: #324936 !important;
	box-shadow: none !important;
	padding-right: 3em !important;
}

.skin-timeless #searchInput::placeholder {
	color: rgba(50, 73, 54, 0.5) !important;
}

.skin-timeless #searchButton,
.skin-timeless #mw-searchButton {
	top: 0 !important;
	right: 0 !important;
	width: 2.6em !important;
	height: 100% !important;
	border: 0 !important;
	border-left: 1px solid #0b5432 !important;
	border-radius: 0 !important;
	background-color: var(--pvzt-green-deep) !important;
	background-image:
		url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='%23ffffff' d='M10.75 3a7.75 7.75 0 1 0 4.82 13.82l4.31 4.31a1.25 1.25 0 0 0 1.77-1.77l-4.31-4.31A7.75 7.75 0 0 0 10.75 3Zm0 2.5a5.25 5.25 0 1 1 0 10.5 5.25 5.25 0 0 1 0-10.5Z'/%3E%3C/svg%3E") !important;
	background-position: center !important;
	background-repeat: no-repeat !important;
	background-size: 17px !important;
	box-shadow: none !important;
	cursor: pointer;
}

.skin-timeless #searchButton:hover,
.skin-timeless #mw-searchButton:hover {
	filter: brightness(1.06);
}

.skin-timeless .suggestions .suggestions-results,
.skin-timeless .suggestions .suggestions-special {
	background: #fffaf0 !important;
	border: 1px solid var(--pvzt-border) !important;
}

.skin-timeless .suggestions .suggestions-result {
	color: var(--pvzt-brown) !important;
}

.skin-timeless .suggestions .suggestions-result-current {
	background: var(--pvzt-green-deep) !important;
	color: #ffffff !important;
}

/* 문서 상단 도구 */
.skin-timeless .tools-inline li {
	border-bottom: 0 !important;
}

.skin-timeless .tools-inline li > a {
	display: inline-flex !important;
	align-items: center !important;
	min-height: 30px;
	padding: 4px 9px 4px 26px !important;
	border: 1px solid var(--pvzt-brown-dark) !important;
	border-radius: 8px !important;
	box-sizing: border-box;
	background-color: #7b4935 !important;
	background-position: 7px center !important;
	background-repeat: no-repeat !important;
	background-size: 14px auto !important;
	color: #ffffff !important;
	font-family:
		"SB Aggro M",
		"SB 어그로 M",
		"SB Aggro",
		"SB 어그로",
		sans-serif !important;
	font-size: 0.73rem !important;
	font-weight: 500 !important;
	line-height: 1.2 !important;
	text-decoration: none !important;
	text-shadow: none !important;
	box-shadow: none !important;
	transition:
		background-color 120ms ease,
		transform 120ms ease;
}

.skin-timeless .tools-inline li > a:hover {
	background-color: #8a5944 !important;
	text-decoration: none !important;
	transform: translateY(-1px);
}

.skin-timeless .tools-inline li.selected > a {
	background-color: #a36f62 !important;
}

.skin-timeless .tools-inline li[id^="ca-nstab-"] > a {
	background-image: url("/wiki/Special:Redirect/file/Actionbar-document.svg") !important;
}

.skin-timeless #ca-talk > a {
	background-image: url("/wiki/Special:Redirect/file/Actionbar-talk.svg") !important;
}

.skin-timeless #ca-view > a,
.skin-timeless #ca-view-foreign > a {
	background-image: url("/wiki/Special:Redirect/file/Actionbar-read.svg") !important;
}

.skin-timeless #ca-edit > a {
	background-image: url("/wiki/Special:Redirect/file/Actionbar-edit.svg") !important;
}

.skin-timeless #ca-history > a {
	background-image: url("/wiki/Special:Redirect/file/Actionbar-history.svg") !important;
}

.skin-timeless #ca-addsection > a,
.skin-timeless #ca-viewsource > a,
.skin-timeless #t-contributions > a {
	background-image: none !important;
	padding-left: 9px !important;
}

.skin-timeless #ca-watch > a,
.skin-timeless #ca-unwatch > a {
	width: 34px;
	padding: 4px !important;
	background-position: center !important;
	background-size: 17px !important;
}

.skin-timeless #ca-watch > a,
.skin-timeless .pvz-watch-not-watched > a,
.skin-timeless a.pvz-watch-not-watched {
	background-image: url("/wiki/Special:Redirect/file/GW2_Star2.png") !important;
}

.skin-timeless #ca-unwatch > a,
.skin-timeless .pvz-watch-watched > a,
.skin-timeless a.pvz-watch-watched {
	background-image: url("/wiki/Special:Redirect/file/GW2_Star.png") !important;
}

.skin-timeless .pvz-watch-spinning > a,
.skin-timeless a.pvz-watch-spinning {
	animation: pvzt-watch-spin 320ms ease;
}

@keyframes pvzt-watch-spin {
	from { transform: rotate(0deg); }
	to { transform: rotate(360deg); }
}

/* 본문 카드 */
.skin-timeless #mw-content {
	position: relative;
	background: var(--pvzt-paper) !important;
	border: 2px solid var(--pvzt-brown-dark) !important;
	border-radius: 18px !important;
	box-sizing: border-box;
	padding: 18px 20px 24px !important;
	overflow: hidden;
	box-shadow: var(--pvzt-shadow) !important;
}

.skin-timeless #mw-content::before,
.skin-timeless #mw-content::after {
	content: none !important;
	display: none !important;
}

/* 문서 제목 */
.skin-timeless #firstHeading,
.skin-timeless .mw-first-heading,
.skin-timeless .mw-body h1.firstHeading {
	display: block;
	width: auto;
	max-width: 100%;
	margin: 0 0 0.7em !important;
	padding: 0.48em 0.68em 0.42em !important;
	border: 0 !important;
	border-radius: 10px !important;
	background: var(--pvzt-green-deep) !important;
	color: #ffffff !important;
	font-size: 1.45em !important;
	clip-path: none !important;
}

.skin-timeless #firstHeading *,
.skin-timeless .mw-first-heading * {
	color: #ffffff !important;
}

.skin-timeless #firstHeading,
.skin-timeless .mw-first-heading,
.skin-timeless .mw-body .mw-heading,
.skin-timeless .mw-body h1,
.skin-timeless .mw-body h2,
.skin-timeless .mw-body h3,
.skin-timeless .mw-body h4,
.skin-timeless .mw-body h5,
.skin-timeless .mw-body h6 {
	font-family:
		"SB Aggro B",
		"SB 어그로 B",
		"SB Aggro",
		"SB 어그로",
		sans-serif !important;
	font-weight: 700 !important;
}

/* 문단 제목의 잔디 구분선 */
.skin-timeless .mw-body .mw-heading2,
.skin-timeless .mw-parser-output > h2 {
	position: relative !important;
	margin-bottom: 0.7em !important;
	padding-bottom: 10px !important;
	border-bottom: 0 !important;
	background: transparent !important;
	box-shadow: none !important;
}

.skin-timeless .mw-body .mw-heading2 > h2 {
	margin-bottom: 0 !important;
	padding-bottom: 0 !important;
	border-bottom: 0 !important;
}

.skin-timeless .mw-body .mw-heading2::after,
.skin-timeless .mw-parser-output > h2::after {
	content: "" !important;
	position: absolute;
	right: 0;
	bottom: 0;
	left: 0;
	display: block !important;
	height: 10px;
	pointer-events: none;
	background: #ead9b8;
	-webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 112 12'%3E%3Cpath fill='black' d='M0 12V8Q3 8 5 5Q6 3 8 6L11 9Q14 7 16 4Q17 2 19 5L22 9Q25 7 28 5Q29 3 31 6L34 9Q37 7 39 4Q40 2 42 5L45 9Q48 7 51 5Q52 3 54 6L57 9Q60 7 63 4Q64 2 66 5L69 9Q72 7 75 5Q76 3 78 6L81 9Q84 7 87 4Q88 2 90 5L93 9Q96 7 99 5Q100 3 102 6L105 9Q109 8 112 7V12Z'/%3E%3C/svg%3E");
	mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 112 12'%3E%3Cpath fill='black' d='M0 12V8Q3 8 5 5Q6 3 8 6L11 9Q14 7 16 4Q17 2 19 5L22 9Q25 7 28 5Q29 3 31 6L34 9Q37 7 39 4Q40 2 42 5L45 9Q48 7 51 5Q52 3 54 6L57 9Q60 7 63 4Q64 2 66 5L69 9Q72 7 75 5Q76 3 78 6L81 9Q84 7 87 4Q88 2 90 5L93 9Q96 7 99 5Q100 3 102 6L105 9Q109 8 112 7V12Z'/%3E%3C/svg%3E");
	-webkit-mask-repeat: repeat-x;
	mask-repeat: repeat-x;
	-webkit-mask-position: left bottom;
	mask-position: left bottom;
	-webkit-mask-size: 112px 12px;
	mask-size: 112px 12px;
}

/* 공통 정보 박스 */
.skin-timeless .mw-body .toc,
.skin-timeless ul#filetoc,
.skin-timeless .toccolours,
.skin-timeless #localNotice,
.skin-timeless #catlinks,
.skin-timeless .catlinks,
.skin-timeless .mw-parser-output > .mw-references-wrap,
.skin-timeless .mw-parser-output > ol.references,
.skin-timeless .mw-parser-output > .references {
	border: 1px solid var(--pvzt-border) !important;
	border-radius: 10px !important;
	background: var(--pvzt-paper-soft) !important;
	background-image: none !important;
	color: var(--pvzt-brown) !important;
	box-shadow: none !important;
}

.skin-timeless #localNotice {
	padding: 0.65rem 0.8rem !important;
}

.skin-timeless #catlinks,
.skin-timeless .catlinks,
.skin-timeless .mw-parser-output > .mw-references-wrap,
.skin-timeless .mw-parser-output > ol.references,
.skin-timeless .mw-parser-output > .references {
	margin-top: 1.2rem !important;
	padding: 0.65rem 0.8rem !important;
	font-family:
		"SB Aggro L",
		"SB 어그로 L",
		"SB Aggro",
		"SB 어그로",
		sans-serif !important;
	font-weight: 300 !important;
	line-height: 1.5 !important;
}

.skin-timeless .mw-parser-output > .mw-references-wrap > ol.references {
	margin: 0 !important;
	padding: 0 0 0 1.5em !important;
	border: 0 !important;
	background: transparent !important;
}

.skin-timeless #mw-normal-catlinks,
.skin-timeless .mw-normal-catlinks,
.skin-timeless #mw-hidden-catlinks,
.skin-timeless .mw-hidden-catlinks {
	border: 0 !important;
	background: transparent !important;
}

.skin-timeless #catlinks a,
.skin-timeless .catlinks a,
.skin-timeless .mw-parser-output > .mw-references-wrap a,
.skin-timeless .mw-parser-output > ol.references a,
.skin-timeless .mw-parser-output > .references a {
	color: var(--pvzt-brown) !important;
	text-shadow: none !important;
}

.skin-timeless #catlinks a:hover,
.skin-timeless .catlinks a:hover,
.skin-timeless .mw-parser-output > .mw-references-wrap a:hover,
.skin-timeless .mw-parser-output > ol.references a:hover,
.skin-timeless .mw-parser-output > .references a:hover {
	color: var(--pvzt-brown-dark) !important;
}

/* 하단 */
.skin-timeless #mw-footer-container,
.skin-timeless .mw-footer-container {
	background: #f3e5ca !important;
	background-image: none !important;
	border-top: 1px solid var(--pvzt-border) !important;
	box-shadow: none !important;
	color: #5f4030 !important;
}

.skin-timeless #mw-footer-container a,
.skin-timeless .mw-footer-container a,
.skin-timeless #mw-footer-container a:visited,
.skin-timeless .mw-footer-container a:visited {
	color: var(--pvzt-brown) !important;
	text-shadow: none !important;
}

.skin-timeless #mw-footer-container a:hover,
.skin-timeless .mw-footer-container a:hover {
	color: var(--pvzt-brown-dark) !important;
}

/* 모바일 */
@media screen and (max-width: 850px) {
	.skin-timeless #mw-content {
		margin: 0.45em 0.35em 1.15em !important;
		padding: 15px 14px 20px !important;
		border-width: 1px !important;
		border-radius: 14px !important;
	}

	.skin-timeless #firstHeading,
	.skin-timeless .mw-first-heading,
	.skin-timeless .mw-body h1.firstHeading {
		font-size: 1.28em !important;
		padding: 0.44em 0.58em 0.4em !important;
		border-radius: 8px !important;
	}

	.skin-timeless .tools-inline {
		display: flex !important;
		flex-wrap: wrap !important;
		gap: 0.28rem !important;
	}

	.skin-timeless .tools-inline li {
		margin: 0 !important;
	}

	.skin-timeless .tools-inline li > a {
		min-height: 28px;
		font-size: 0.69rem !important;
		padding-top: 3px !important;
		padding-bottom: 3px !important;
	}

	.skin-timeless #mw-site-navigation .sidebar-inner,
	.skin-timeless #mw-related-navigation .sidebar-inner,
	.skin-timeless #personal .dropdown {
		border-radius: 10px !important;
	}
}

@media screen and (min-width: 851px) {
	.skin-timeless #mw-content {
		padding: 24px 28px 30px !important;
		border-radius: 20px !important;
	}

	.skin-timeless #firstHeading,
	.skin-timeless .mw-first-heading {
		font-size: 1.65em !important;
	}
}

@media (prefers-reduced-motion: reduce) {
	.skin-timeless *,
	.skin-timeless *::before,
	.skin-timeless *::after {
		animation-duration: 1ms !important;
		transition-duration: 1ms !important;
	}
}