미디어위키:Theme.css: 두 판 사이의 차이

편집 요약 없음
편집 요약 없음
33번째 줄: 33번째 줄:


/* 폰트 */
/* 폰트 */
@import url('https://cdn.jsdelivr.net/npm/galmuri@latest/dist/galmuri.css');
@font-face {
    font-family: 'Galmuri11';
    src: url('/fonts/Galmuri11.woff2') format('woff2');
    font-weight: 400;
    font-display: block;
}


@font-face {
@font-face {
     font-family: 'Galmuri11';
     font-family: 'Galmuri11';
     src: url('https://cdn.jsdelivr.net/gh/projectnoonnu/2506-1@1.0/Galmuri11.woff2') format('woff2');
     src: url('/fonts/Galmuri11-Bold.woff2') format('woff2');
     font-weight: 400;
     font-weight: 700;
     font-display: swap;
     font-display: block;
}
}



2026년 4월 23일 (목) 15:02 판

/* =========================================
   COASTLINE: BLACK ICE - Theme
   ========================================= */

/* 선택 영역 */
::selection {
    background: rgba(133, 67, 105, 0.50);
    color: #ffffff;
}

::-moz-selection {
    background: rgba(133, 67, 105, 0.50);
    color: #ffffff;
}

/* SVG + 테두리일 때 사각 테두리 제거, 형태 외곽선만 적용 */
.mw-image-border:has(img[src$=".svg.png"]) {
    border: none !important;
    box-shadow: none !important;
    background: transparent !important;
    padding: 0 !important;
}

.mw-image-border img[src$=".svg.png"] {
    border: none !important;
    box-shadow: none !important;
    filter:
        drop-shadow(1px 0 0 #ffffff)
        drop-shadow(-1px 0 0 #ffffff)
        drop-shadow(0 1px 0 #ffffff)
        drop-shadow(0 -1px 0 #ffffff);
}

/* 폰트 */
@font-face {
    font-family: 'Galmuri11';
    src: url('/fonts/Galmuri11.woff2') format('woff2');
    font-weight: 400;
    font-display: block;
}

@font-face {
    font-family: 'Galmuri11';
    src: url('/fonts/Galmuri11-Bold.woff2') format('woff2');
    font-weight: 700;
    font-display: block;
}

@font-face {
    font-family: 'BoldRound';
    src: url('https://cdn.jsdelivr.net/gh/projectnoonnu/2507-2@1.0/BoldDungGeunMo.woff2') format('woff2');
    font-weight: normal;
    font-display: swap;
}

html body, html .liberty-content-main {
    font-family: 'Galmuri11', sans-serif !important;
    font-weight: 400 !important;
    font-size: 12px;
}

* { font-family: inherit !important; }

.fa, .far, .fas, .fab, [class*="fa-"] {
    font-family: 'Font Awesome 5 Free', 'Font Awesome 5 Brands', 'FontAwesome' !important;
}

.mw-page-title-main, .mw-page-title-namespace,
.liberty-content-main h1, .liberty-content-main h2,
.liberty-content-main h3, .liberty-content-main h4,
.liberty-content-main h5, .liberty-content-main h6 {
    font-family: 'BoldRound', sans-serif !important;
}

/* 배경 */
.WW-bg {
    position: fixed;
    overflow: hidden;
    pointer-events: none;
    z-index: -3;
    background: #000;
}
.WW-bg::before {
    content: "";
    position: absolute;
    top: -256px;
    left: -256px;
    width: calc(100% + 512px);
    height: calc(100% + 512px);
    background-image:
        linear-gradient(rgba(85,10,63,0.75) 1px, transparent 1px),
        linear-gradient(90deg, rgba(85,10,63,0.75) 1px, transparent 1px);
    background-size: 72px 72px;
    animation: WWGridLarge 18s linear infinite;
    opacity: .9;
    filter: drop-shadow(0 0 4px rgba(99,27,83,0.45));
}
@keyframes WWGridLarge {
    from { transform: translate(0,0) }
    to { transform: translate(72px,72px) }
}

/* 스크롤 */
html { overflow-y: scroll; }
::-webkit-scrollbar { width: 6px; }
::-webkit-scrollbar-track { background: #0a0909; }
::-webkit-scrollbar-thumb { background: #854369; border-radius: 3px; }

/* 제목 */
.mw-page-title-main {
    border-radius: 5px 5px 0 0 !important;
    padding: 7px !important;
    border: 2px solid #854369 !important;
    border-bottom: none !important;
    background: #171717 !important;
    color: #e2e2e2 !important;
    display: inline-block !important;
    position: relative !important;
}
.mw-page-title-main::after {
    content: '';
    position: absolute;
    bottom: -2px;
    left: 0;
    right: 0;
    height: 2px;
    background: #171717;
}
.mw-page-title-namespace {
    padding: 7px 0 7px 7px !important;
    border: 2px solid #854369 !important;
    border-right: none !important;
    border-bottom: none !important;
    border-radius: 5px 0 0 0 !important;
    background: #171717 !important;
    color: #e2e2e2 !important;
    display: inline-block !important;
    vertical-align: bottom !important;
    position: relative !important;
}
.mw-page-title-namespace::after {
    content: '';
    position: absolute;
    bottom: -2px;
    left: 0;
    right: 0;
    height: 2px;
    background: #171717;
}
.mw-page-title-separator {
    padding: 7px 0 !important;
    border-top: 2px solid #854369 !important;
    border-bottom: none !important;
    background: #171717 !important;
    color: #e2e2e2 !important;
    display: inline-block !important;
    vertical-align: bottom !important;
    position: relative !important;
}
.mw-page-title-separator::after {
    content: '';
    position: absolute;
    bottom: -2px;
    left: 0;
    right: 0;
    height: 2px;
    background: #171717;
}
.mw-page-title-namespace ~ .mw-page-title-main {
    border-radius: 0 5px 0 0 !important;
    padding: 7px 7px 7px 0 !important;
    border-left: none !important;
    vertical-align: bottom !important;
}

/* 특수 페이지 h1 */
.liberty-content-header .title h1:not(:has(.mw-page-title-main)) {
    background: #171717 !important;
    color: #e2e2e2 !important;
    border: 2px solid #854369 !important;
    border-bottom: none !important;
    border-radius: 5px 5px 0 0 !important;
    padding: 7px !important;
    display: inline-block !important;
    position: relative !important;
    font-family: 'BoldRound', sans-serif !important;
}
.liberty-content-header .title h1:not(:has(.mw-page-title-main))::after {
    content: '';
    position: absolute;
    bottom: -2px;
    left: 0;
    right: 0;
    height: 2px;
    background: #171717;
}

/* 대문 제목 숨기기 */
.mw-page-title-main.clbi-hide,
.mw-page-title-main.clbi-hide::after { display: none !important; }

/* 본문 */
.Liberty .content-wrapper .liberty-content .liberty-content-main,
.mw-datatable th, .mw-datatable tr:hover td, textarea,
div.mw-warning-with-logexcerpt, div.mw-lag-warn-high,
div.mw-cascadeprotectedwarning, div#mw-protect-cascadeon {
    background: #171717;
    color: #ffffff;
}
.mw-references-columns { border-top: 1px solid #414141 !important; }

/* 문단 보더 */
.Liberty .content-wrapper .liberty-content .liberty-content-main h1,
.Liberty .content-wrapper .liberty-content .liberty-content-main h2,
.Liberty .content-wrapper .liberty-content .liberty-content-main h3,
.Liberty .content-wrapper .liberty-content .liberty-content-main h4,
.Liberty .content-wrapper .liberty-content .liberty-content-main h5,
.Liberty .content-wrapper .liberty-content .liberty-content-main h6 {
    margin-top: 1rem;
    border-bottom: 1px solid #414141 !important;
    margin-bottom: 0.6rem;
    padding-bottom: 0.6rem;
    overflow-wrap: break-word;
    overflow: hidden;
}

/* 링크 색상 */
a { color: #d45aa2 !important; }
a:hover { color: #fdecf9 !important; }
a:active { color: #b3337d !important; }
a.new { color: #ba0000 !important; }
a.new:hover { color: #fe5757 !important; }
a.new:active { color: #ba0000 !important; }
a.external { color: #33b733 !important; text-decoration: underline !important; }
a.external:hover { color: #95ed95 !important; }
a.external:active { color: #33b733 !important; }
a.external:before { display: none !important; }

/* CLBI 템플릿 링크 */
.CLBI-template a { color: #d45aa2 !important; }
.CLBI-template a:hover { color: #fdecf9 !important; }
.CLBI-template a:active { color: #b3337d !important; }
.CLBI-template a.new { color: #ba0000 !important; }
.CLBI-template a.new:hover { color: #fe5757 !important; }
.CLBI-template a.new:active { color: #ba0000 !important; }
.CLBI-template a.external { color: #33b733 !important; }
.CLBI-template a.external:hover { color: #95ed95 !important; }
.CLBI-template a.external:active { color: #33b733 !important; }

/* 편집 버튼 */
.btn-secondary {
    color: #e2e2e2 !important;
    background-color: #171717 !important;
    border: 2px solid #854369 !important;
    border-bottom: none !important;
    border-radius: 0 !important;
    box-shadow: 0 2px 0 0 #854369 !important;
}
.btn-secondary:hover {
    color: #d46262 !important;
    background-color: #171717 !important;
    border: 2px solid #854369 !important;
    border-bottom: none !important;
    border-radius: 0 !important;
    box-shadow: 0 2px 0 0 #854369 !important;
}
.btn-group .btn:first-child { border-radius: 5px 0 0 0 !important; }
.btn-group .dropdown-toggle { border-radius: 0 5px 0 0 !important; }

/* 기본 목차 */
#mw-toc-heading { color: #ffffff; }
.toctogglelabel:after { color: #b45c8f !important; }
.tocnumber { color: #b45c8f !important; }
.toctogglespan { color: #b45c8f !important; }
.toctext { color: #e4e4e4 !important; }
.toctitle {
    background-color: #101010 !important;
    border: 1.5px solid #101010 !important;
    border-radius: 8px 8px 0 0 !important;
    box-shadow: inset 1px 0 0 #1A1A1A, inset 0 -1px 0 #525252, 0 0 0 3px #1A1A1A, 0 0 0 5px #854369, 0 4px 12px #000;
}
.toc ul {
    background-color: #1A1A1A !important;
    border: 1.5px solid #1A1A1A !important;
    box-shadow: inset 1px 0 0 #1A1A1A, inset 0 -1px 0 #525252, 0 0 0 3px #1A1A1A, 0 0 0 5px #854369, 0 4px 12px #000;
    border-radius: 0 0 8px 8px !important;
}
.toc li { background-color: transparent !important; }
.toc ul ul { border: none !important; box-shadow: none !important; }

/* 사이드바 목차 */
#clbi-toc-box .clbi-left-content {
    padding: 10px 12px !important;
}

#clbi-toc-box #toc,
#clbi-toc-box .toc {
    margin: 0 !important;
    padding: 0 !important;
    background: transparent !important;
    border: none !important;
    box-shadow: none !important;
    width: 100% !important;
    font-size: 12px !important;
}

#clbi-toc-box .toctitle {
    display: none !important;
}

#clbi-toc-box ul {
    margin: 0 !important;
    padding: 0 !important;
    list-style: none !important;
    background: transparent !important;
    border: none !important;
    box-shadow: none !important;
}

#clbi-toc-box li {
    margin: 0 0 4px 0 !important;
    padding: 0 !important;
    background: transparent !important;
    line-height: 1.5 !important;
}

#clbi-toc-box li:last-child {
    margin-bottom: 0 !important;
}

#clbi-toc-box a {
    display: block !important;
    color: #E2E2E2 !important;
    text-decoration: none !important;
    padding: 4px 6px !important;
    border-radius: 4px !important;
}

#clbi-toc-box a:hover {
    background: rgba(133, 67, 105, 0.18) !important;
    color: #ffffff !important;
}

#clbi-toc-box .tocnumber {
    color: #854369 !important;
    margin-right: 6px !important;
}

#clbi-toc-box ul ul {
    padding-left: 12px !important;
    margin-top: 2px !important;
}

/* 분류 칸 */
.catlinks {
    background: #1A1A1A !important;
    border: 2px solid #854369 !important;
    border-radius: 5px !important;
    font-size: 12px !important;
    box-shadow: 0px 0px 3px #361427 !important;
    color: #e2e2e2 !important;
    padding: 2px 10px !important;
    margin: -7px auto 10px auto !important;
    width: calc(100% + 8px) !important;
    position: relative !important;
    left: -3px !important;
}
.catlinks ul { padding: 0 !important; margin: 0 !important; background-color: #1A1A1A !important; }
.catlinks a { color: #854369 !important; }
.catlinks a:hover { color: #d45aa2 !important; }

/* 분류 문서 */
.mw-category-generated { color: #e2e2e2 !important; }
.mw-category-generated a { color: #854369 !important; }
.CategoryTreeToggle { color: #854369 !important; }
.number-link { color: #854369 !important; }

/* 편집 섹션 */
.mw-editsection { color: #b45c8f !important; float: right; font-weight: bold; }

/* 넘겨주기 */
.mw-redirectedfrom { color: #854369 !important; }
.mw-redirectedfrom a { color: #854369 !important; }

/* 서브페이지 */
.subpages { color: #fdecec !important; }
.subpages a { color: #854369 !important; }
.subpages a:active { color: #854369 !important; }

/* 공지사항 */
.alert-info { background-color: #171717 !important; border: 2px solid #854369 !important; box-shadow: 0px 0px 3px #000000; }

/* 푸터 */
.footer-info-lastmod { color: #e2e2e2 !important; }
.footer-info-copyright { color: #e2e2e2 !important; }
.footer-places-privacy a { color: #c95197 !important; }
.footer-places-privacy a:active { color: #e2e2e2 !important; }
.footer-places-about a { color: #c95197 !important; }
.footer-places-about a:active { color: #e2e2e2 !important; }
.footer-places-disclaimers a { color: #c95197 !important; }
.footer-places-disclaimers a:active { color: #e2e2e2 !important; }

/* 리스트 */
.liberty-content-main ul:not(#toc) { list-style-type: disc; list-style-image: none; }
.liberty-content-main ul ul:not(#toc) { list-style-type: circle; list-style-image: none; }
.liberty-content-main ul ul ul:not(#toc) { list-style-type: square; list-style-image: none; }

/* 반전 */
.invert { filter: invert(1); }