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

편집 요약 없음
편집 요약 없음
2번째 줄: 2번째 줄:
COASTLINE: BLACK ICE
COASTLINE: BLACK ICE
MediaWiki:Test.css
MediaWiki:Test.css
Sandbox-only 2000s Industrial Archive Test
Sandbox-only style test
Top-light / horizontal nav fixed
Matte gunmetal official archive console
========================================= */
========================================= */


.clbi-y2k-sandbox {
/*
--y2k-bg:#070707;
Scope rule:
--y2k-panel:#101010;
- This file is globally imported, but every rule is scoped to .clbi-stylelab.
--y2k-panel-2:#141414;
- Do not style body, page-대문, top navigation, sidebars, or global layout here.
--y2k-panel-3:#181818;
*/
--y2k-title:#1d1d1d;
--y2k-title-hover:#252525;
--y2k-well:#080808;
--y2k-row:#131313;
--y2k-line:#2b2b2b;
--y2k-line-soft:#202020;
--y2k-line-top:#525252;
--y2k-line-side:#2b2b2b;
--y2k-line-bottom:#050505;
--y2k-text:#e2e2e2;
--y2k-text-soft:#c8c8c8;
--y2k-text-dim:#8a8a8a;
--y2k-text-faint:#5f5f5f;


width:100%;
/* -----------------------------------------
margin:0 auto;
0. Style tokens
padding:8px;
----------------------------------------- */
color:var(--y2k-text);
 
background:var(--y2k-bg);
.clbi-stylelab {
font-size:11px;
    --clbi-bg-page: #070707;
line-height:1.5;
    --clbi-bg-shell: #0b0b0b;
box-sizing:border-box;
    --clbi-bg-frame: #101010;
    --clbi-bg-frame-2: #141414;
    --clbi-bg-title: #1d1d1d;
    --clbi-bg-title-hover: #252525;
    --clbi-bg-well: #080808;
    --clbi-bg-row: #121212;
    --clbi-bg-row-alt: #151515;
 
    --clbi-edge-top: #555555;
    --clbi-edge-side: #2b2b2b;
    --clbi-edge-bottom: #050505;
    --clbi-edge-soft: #202020;
    --clbi-edge-mid: #333333;
 
    --clbi-text-main: #e2e2e2;
    --clbi-text-soft: #c8c8c8;
    --clbi-text-dim: #8a8a8a;
    --clbi-text-faint: #626262;
 
    --clbi-accent: #854369;
    --clbi-accent-bright: #b65d8f;
 
    --clbi-gap: 8px;
    --clbi-gap-tight: 6px;
    --clbi-pad: 8px;
    --clbi-title-h: 24px;
    --clbi-row-h: 22px;
 
    width: 100%;
    margin: 0 auto;
    padding: var(--clbi-gap);
    color: var(--clbi-text-main);
    background:
        linear-gradient(var(--clbi-bg-page), var(--clbi-bg-page)),
        #000;
    font-size: 11px;
    line-height: 1.5;
    box-sizing: border-box;
}
 
.clbi-stylelab *,
.clbi-stylelab *::before,
.clbi-stylelab *::after {
    box-sizing: border-box;
}
}


.clbi-y2k-sandbox *,
.clbi-stylelab a {
.clbi-y2k-sandbox *::before,
    color: var(--clbi-text-main) !important;
.clbi-y2k-sandbox *::after {
    text-decoration: none !important;
box-sizing:border-box;
}
}


.clbi-y2k-sandbox a {
.clbi-stylelab a:hover {
color:var(--y2k-text) !important;
    color: #ffffff !important;
text-decoration:none !important;
    text-decoration: underline !important;
}
}


.clbi-y2k-sandbox a:hover {
/* -----------------------------------------
color:#ffffff !important;
1. Frame system
text-decoration:underline !important;
North-light rule:
top bright / sides neutral / bottom dark
----------------------------------------- */
 
.clbi-stylelab .clbi-frame,
.clbi-stylelab .clbi-logo,
.clbi-stylelab .clbi-directory,
.clbi-stylelab .clbi-console,
.clbi-stylelab .clbi-panel,
.clbi-stylelab .clbi-ticker {
    border: 1px solid;
    border-color:
        var(--clbi-edge-top)
        var(--clbi-edge-side)
        var(--clbi-edge-bottom)
        var(--clbi-edge-side);
    background: var(--clbi-bg-frame);
    border-radius: 0;
    box-shadow: none;
    outline: none;
    overflow: hidden;
}
}


/* 공통 프레임 */
.clbi-stylelab .clbi-titlebar {
    min-height: var(--clbi-title-h);
    padding: 0 var(--clbi-pad);
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: var(--clbi-gap);
    background: var(--clbi-bg-title);
    border-bottom: 1px solid var(--clbi-edge-bottom);
    color: #f0f0f0;
    font-size: 10px;
    font-weight: 700;
    line-height: var(--clbi-title-h);
    white-space: nowrap;
    overflow: hidden;
    text-shadow: 1px 1px 0 #000;
}


.clbi-y2k-sandbox .clbi-y2k-logo,
.clbi-stylelab .clbi-titlebar span {
.clbi-y2k-sandbox .clbi-y2k-nav,
    overflow: hidden;
.clbi-y2k-sandbox .clbi-y2k-hero,
    text-overflow: ellipsis;
.clbi-y2k-sandbox .clbi-y2k-box {
border-width:1px;
border-style:solid;
border-color:var(--y2k-line-top) var(--y2k-line-side) var(--y2k-line-bottom) var(--y2k-line-side);
background:var(--y2k-panel);
border-radius:0;
box-shadow:none;
outline:none;
overflow:hidden;
}
}


.clbi-y2k-sandbox .clbi-y2k-hero-top,
.clbi-stylelab .clbi-well {
.clbi-y2k-sandbox .clbi-y2k-plate-title,
    border: 1px solid var(--clbi-edge-soft);
.clbi-y2k-sandbox .clbi-y2k-box-title {
    background: var(--clbi-bg-well);
background:var(--y2k-title);
border-bottom:1px solid var(--y2k-line-bottom);
color:#f0f0f0;
text-shadow:1px 1px 0 #000000;
}
}


/* 로고 */
/* -----------------------------------------
2. Header / logo
----------------------------------------- */


.clbi-y2k-sandbox .clbi-y2k-logo {
.clbi-stylelab .clbi-logo {
width:100%;
    width: 100%;
margin:0 0 8px;
    margin: 0 0 var(--clbi-gap);
padding:10px 0 8px;
    padding: 10px 0 8px;
text-align:center;
    text-align: center;
line-height:0;
    line-height: 0;
}
}


.clbi-y2k-sandbox .clbi-y2k-logo .mw-file-element,
.clbi-stylelab .clbi-logo a,
.clbi-y2k-sandbox .clbi-y2k-logo img {
.clbi-stylelab .clbi-logo .mw-file-description {
width:720px;
    display: inline-block;
max-width:88%;
    line-height: 0;
height:auto;
filter:grayscale(1) contrast(1.06) brightness(1.02) drop-shadow(2px 2px 0 #000000);
}
}


.clbi-y2k-sandbox .clbi-y2k-logo a.image,
.clbi-stylelab .clbi-logo img,
.clbi-y2k-sandbox .clbi-y2k-logo .mw-file-description {
.clbi-stylelab .clbi-logo .mw-file-element {
display:inline-block;
    width: 720px;
line-height:0;
    max-width: 88%;
    height: auto;
    filter:
        grayscale(1)
        contrast(1.04)
        brightness(1.02);
}
}


/* 상단 카테고리 바 */
/* -----------------------------------------
3. Directory strip
This is a test component, not a global navigation replacement.
----------------------------------------- */


.clbi-y2k-sandbox .clbi-y2k-nav {
.clbi-stylelab .clbi-directory {
display:block;
    width: 100%;
width:100%;
    margin: 0 0 var(--clbi-gap) !important;
margin:0 0 8px;
    border-collapse: collapse !important;
background:var(--y2k-panel);
    table-layout: fixed !important;
}
}


.clbi-y2k-sandbox .clbi-y2k-nav ul {
.clbi-stylelab .clbi-directory tbody,
display:flex;
.clbi-stylelab .clbi-directory tr {
width:100%;
    width: 100%;
margin:0 !important;
padding:0 !important;
list-style:none !important;
}
}


.clbi-y2k-sandbox .clbi-y2k-nav li {
.clbi-stylelab .clbi-directory td {
flex:1 1 0;
    margin: 0 !important;
margin:0 !important;
    padding: 0 !important;
padding:0 !important;
    border: none !important;
list-style:none !important;
    border-right: 1px solid var(--clbi-edge-bottom) !important;
border-right:1px solid var(--y2k-line-bottom);
    background: var(--clbi-bg-frame-2) !important;
    vertical-align: middle !important;
    text-align: center !important;
}
}


.clbi-y2k-sandbox .clbi-y2k-nav li:last-child {
.clbi-stylelab .clbi-directory td:last-child {
border-right:none;
    border-right: none !important;
}
}


.clbi-y2k-sandbox .clbi-y2k-nav li::marker {
.clbi-stylelab .clbi-directory a {
content:"";
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 100% !important;
    min-height: 30px !important;
    padding: 7px 6px 6px !important;
    color: var(--clbi-text-main) !important;
    font-size: 10px !important;
    font-weight: 700 !important;
    line-height: 1.2 !important;
    text-align: center !important;
    text-shadow: 1px 1px 0 #000 !important;
}
}


.clbi-y2k-sandbox .clbi-y2k-nav a {
.clbi-stylelab .clbi-directory td:hover,
width:100%;
.clbi-stylelab .clbi-directory td:hover a {
min-height:28px;
    background: var(--clbi-bg-title-hover) !important;
padding:7px 6px 6px;
    color: #ffffff !important;
display:flex;
    text-decoration: none !important;
align-items:center;
justify-content:center;
background:var(--y2k-panel-3);
color:var(--y2k-text) !important;
font-size:10px;
font-weight:700;
line-height:1.2;
text-align:center;
text-shadow:1px 1px 0 #000000;
text-decoration:none !important;
}
}


.clbi-y2k-sandbox .clbi-y2k-nav a:hover {
/* -----------------------------------------
background:var(--y2k-title-hover);
4. Main console
color:#ffffff !important;
----------------------------------------- */
text-decoration:none !important;
 
.clbi-stylelab .clbi-console {
    width: 100%;
    margin: 0 0 var(--clbi-gap);
    padding: var(--clbi-gap-tight);
}
}


/* 히어로 */
.clbi-stylelab .clbi-console-grid {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 260px;
    gap: var(--clbi-gap-tight);
}


.clbi-y2k-sandbox .clbi-y2k-hero {
.clbi-stylelab .clbi-main-screen,
width:100%;
.clbi-stylelab .clbi-side-screen {
margin:0 0 8px;
    min-width: 0;
padding:6px;
    border: 1px solid var(--clbi-edge-soft);
    background: var(--clbi-bg-well);
}
}


.clbi-y2k-sandbox .clbi-y2k-hero-top {
.clbi-stylelab .clbi-main-screen {
height:24px;
    min-height: 260px;
padding:0 8px;
    padding: 18px 18px 16px;
display:flex;
align-items:center;
justify-content:space-between;
gap:12px;
font-size:10px;
line-height:24px;
white-space:nowrap;
overflow:hidden;
}
}


.clbi-y2k-sandbox .clbi-y2k-hero-top span {
.clbi-stylelab .clbi-main-screen h2 {
overflow:hidden;
    margin: 0 0 12px !important;
text-overflow:ellipsis;
    padding: 0 0 8px !important;
    border-bottom: 1px solid var(--clbi-edge-soft) !important;
    color: #f4f4f4 !important;
    font-size: 22px !important;
    line-height: 1.25 !important;
    text-align: center !important;
    text-shadow: 1px 1px 0 #000 !important;
}
}


.clbi-y2k-sandbox .clbi-y2k-hero-body {
.clbi-stylelab .clbi-main-screen p {
display:grid;
    max-width: 800px;
grid-template-columns:minmax(0,1fr) 245px;
    margin: 0 auto 10px;
gap:6px;
    color: #d8d8d8;
margin-top:6px;
    font-size: 12px;
align-items:stretch;
    line-height: 1.72;
    text-align: center;
    text-shadow: 1px 1px 0 #000;
}
}


.clbi-y2k-sandbox .clbi-y2k-feature,
.clbi-stylelab .clbi-side-screen {
.clbi-y2k-sandbox .clbi-y2k-sideplate {
    padding: var(--clbi-pad);
min-width:0;
border-width:1px;
border-style:solid;
border-color:var(--y2k-line-top) var(--y2k-line-side) var(--y2k-line-bottom) var(--y2k-line-side);
background:var(--y2k-well);
}
}


.clbi-y2k-sandbox .clbi-y2k-feature {
/* -----------------------------------------
min-height:235px;
5. Small data tables
padding:12px 16px;
----------------------------------------- */
 
.clbi-stylelab .clbi-data-title {
    min-height: 22px;
    margin: 0 0 6px;
    padding: 5px 7px;
    border: 1px solid;
    border-color:
        var(--clbi-edge-top)
        var(--clbi-edge-side)
        var(--clbi-edge-bottom)
        var(--clbi-edge-side);
    background: var(--clbi-bg-title);
    color: #f0f0f0;
    font-size: 10px;
    font-weight: 700;
    line-height: 1.2;
    text-shadow: 1px 1px 0 #000;
}
}


.clbi-y2k-sandbox .clbi-y2k-feature h2 {
.clbi-stylelab .clbi-data-table {
margin:0 0 10px !important;
    width: 100%;
padding:0 0 7px !important;
    margin: 0;
border-bottom:1px solid var(--y2k-line-soft) !important;
    border-collapse: collapse;
color:#f4f4f4 !important;
    table-layout: fixed;
font-size:22px !important;
    font-size: 10px;
line-height:1.25 !important;
text-align:center !important;
text-shadow:1px 1px 0 #000000 !important;
}
}


.clbi-y2k-sandbox .clbi-y2k-feature p {
.clbi-stylelab .clbi-data-table td {
max-width:760px;
    padding: 5px 6px;
margin:0 auto 10px;
    border: 1px solid var(--clbi-edge-soft);
color:#d8d8d8;
    background: #111;
font-size:12px;
    color: var(--clbi-text-soft);
line-height:1.72;
    vertical-align: middle;
text-align:center;
text-shadow:1px 1px 0 #000000;
}
}


.clbi-y2k-sandbox .clbi-y2k-sideplate {
.clbi-stylelab .clbi-data-table td:first-child {
padding:8px;
    width: 72px;
    color: var(--clbi-text-dim);
    background: #0b0b0b;
}
}


.clbi-y2k-sandbox .clbi-y2k-plate-title {
/* -----------------------------------------
min-height:22px;
6. Ticker
margin:0 0 6px;
----------------------------------------- */
padding:5px 7px;
 
border-width:1px;
.clbi-stylelab .clbi-ticker {
border-style:solid;
    height: 22px;
border-color:var(--y2k-line-top) var(--y2k-line-side) var(--y2k-line-bottom) var(--y2k-line-side);
    margin: 0 0 var(--clbi-gap-tight);
background:var(--y2k-title);
    padding: 0 var(--clbi-pad);
font-size:10px;
    color: #bdbdbd;
font-weight:700;
    background: #171717;
line-height:1.2;
    font-size: 10px;
    line-height: 22px;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    text-shadow: 1px 1px 0 #000;
}
}


/* 작은 표 */
/* -----------------------------------------
7. Lower modules
----------------------------------------- */


.clbi-y2k-sandbox .clbi-y2k-mini-table {
.clbi-stylelab .clbi-module-grid {
width:100%;
    display: grid;
margin:0;
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) 280px;
border-collapse:collapse;
    gap: var(--clbi-gap-tight);
table-layout:fixed;
font-size:10px;
}
}


.clbi-y2k-sandbox .clbi-y2k-mini-table td {
.clbi-stylelab .clbi-panel {
padding:5px 6px;
    min-width: 0;
border:1px solid var(--y2k-line-soft);
background:#111111;
color:#cfcfcf;
vertical-align:middle;
}
}


.clbi-y2k-sandbox .clbi-y2k-mini-table td:first-child {
.clbi-stylelab .clbi-panel-body {
width:72px;
    padding: var(--clbi-pad);
color:var(--y2k-text-dim);
    background: var(--clbi-bg-well);
background:#0b0b0b;
}
}


/* 티커 */
.clbi-stylelab .clbi-record-list {
    margin: 0 !important;
    padding: 0 !important;
    list-style: none !important;
}


.clbi-y2k-sandbox .clbi-y2k-ticker {
.clbi-stylelab .clbi-record-list li {
height:22px;
    display: grid;
margin:0 0 6px;
    grid-template-columns: minmax(0, 1fr) auto;
padding:0 8px;
    gap: var(--clbi-gap);
border-width:1px;
    min-height: var(--clbi-row-h);
border-style:solid;
    margin: 0;
border-color:var(--y2k-line-top) var(--y2k-line-side) var(--y2k-line-bottom) var(--y2k-line-side);
    padding: 4px 2px;
background:#171717;
    border-bottom: 1px solid var(--clbi-edge-soft);
color:#bdbdbd;
    color: var(--clbi-text-soft);
font-size:10px;
    line-height: 1.35;
line-height:22px;
white-space:nowrap;
overflow:hidden;
text-overflow:ellipsis;
text-shadow:1px 1px 0 #000000;
}
}


/* 하단 모듈 */
.clbi-stylelab .clbi-record-list li:first-child {
    border-top: 1px solid var(--clbi-edge-soft);
}


.clbi-y2k-sandbox .clbi-y2k-grid {
.clbi-stylelab .clbi-record-list li span:first-child {
display:grid;
    min-width: 0;
grid-template-columns:minmax(0,1fr) minmax(0,1fr) 260px;
    overflow: hidden;
gap:6px;
    text-overflow: ellipsis;
    white-space: nowrap;
}
}


.clbi-y2k-sandbox .clbi-y2k-box {
.clbi-stylelab .clbi-meta {
min-width:0;
    color: var(--clbi-text-dim);
    white-space: nowrap;
    font-size: 9px;
}
}


.clbi-y2k-sandbox .clbi-y2k-box-title {
.clbi-stylelab .clbi-status-tag {
height:24px;
    display: inline-block;
padding:0 8px;
    min-width: 34px;
color:#f1f1f1;
    padding: 1px 4px;
font-size:10px;
    border-left: 2px solid var(--clbi-accent);
font-weight:700;
    background: #161616;
line-height:24px;
    color: var(--clbi-text-soft);
white-space:nowrap;
    font-size: 9px;
overflow:hidden;
    text-align: center;
text-overflow:ellipsis;
}
}


.clbi-y2k-sandbox .clbi-y2k-box-body {
/* -----------------------------------------
padding:7px;
8. Archive status
background:var(--y2k-well);
----------------------------------------- */
 
.clbi-stylelab .clbi-status-grid {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
    gap: var(--clbi-gap-tight);
    margin: 0 0 var(--clbi-gap-tight);
}
}


.clbi-y2k-sandbox .clbi-y2k-list {
.clbi-stylelab .clbi-counter {
margin:0 !important;
    min-width: 0;
padding:0 !important;
    padding: 7px 6px;
list-style:none !important;
    border: 1px solid var(--clbi-edge-soft);
    background: #070707;
    text-align: center;
}
}


.clbi-y2k-sandbox .clbi-y2k-list li {
.clbi-stylelab .clbi-counter b {
display:flex;
    display: block;
justify-content:space-between;
    color: #f0f0f0;
align-items:center;
    font-family: Consolas, Monaco, monospace !important;
gap:8px;
    font-size: 18px;
min-height:22px;
    line-height: 1.1;
margin:0;
    text-shadow: 1px 1px 0 #000;
padding:4px 6px;
border-width:1px;
border-style:solid;
border-color:var(--y2k-line-top) var(--y2k-line-side) var(--y2k-line-bottom) var(--y2k-line-side);
background:var(--y2k-row);
color:#cfcfcf;
line-height:1.35;
}
}


.clbi-y2k-sandbox .clbi-y2k-list li + li {
.clbi-stylelab .clbi-counter span {
margin-top:4px;
    display: block;
    margin-top: 3px;
    color: var(--clbi-text-dim);
    font-size: 9px;
}
}


.clbi-y2k-sandbox .clbi-y2k-list li span:first-child {
.clbi-stylelab .clbi-guestbook {
min-width:0;
    padding: 7px;
overflow:hidden;
    border: 1px solid var(--clbi-edge-soft);
text-overflow:ellipsis;
    background: var(--clbi-bg-row);
white-space:nowrap;
    color: var(--clbi-text-soft);
    font-size: 10px;
    line-height: 1.45;
}
}


.clbi-y2k-sandbox .clbi-y2k-meta {
.clbi-stylelab .clbi-guestbook b {
color:var(--y2k-text-dim);
    color: #eeeeee;
white-space:nowrap;
font-size:9px;
flex:0 0 auto;
}
}


/* 상태 카운터 / 방명록 */
/* -----------------------------------------
9. Manual samples
----------------------------------------- */


.clbi-y2k-sandbox .clbi-y2k-status-grid {
.clbi-stylelab .clbi-sample-row {
display:grid;
    display: grid;
grid-template-columns:minmax(0,1fr) minmax(0,1fr);
    grid-template-columns: 150px minmax(0, 1fr);
gap:6px;
    gap: var(--clbi-gap-tight);
margin:0 0 6px;
    padding: 5px 0;
    border-bottom: 1px solid var(--clbi-edge-soft);
}
}


.clbi-y2k-sandbox .clbi-y2k-counter {
.clbi-stylelab .clbi-sample-row:first-child {
min-width:0;
    border-top: 1px solid var(--clbi-edge-soft);
padding:6px;
border-width:1px;
border-style:solid;
border-color:var(--y2k-line-top) var(--y2k-line-side) var(--y2k-line-bottom) var(--y2k-line-side);
background:#070707;
text-align:center;
}
}


.clbi-y2k-sandbox .clbi-y2k-counter b {
.clbi-stylelab .clbi-sample-label {
display:block;
    color: var(--clbi-text-dim);
color:#f0f0f0;
    font-size: 10px;
font-family:Consolas, Monaco, monospace !important;
font-size:18px;
line-height:1.1;
text-shadow:1px 1px 0 #000000;
}
}


.clbi-y2k-sandbox .clbi-y2k-counter span {
.clbi-stylelab .clbi-sample-value {
display:block;
    color: var(--clbi-text-soft);
margin-top:3px;
    font-size: 10px;
color:var(--y2k-text-dim);
font-size:9px;
}
}


.clbi-y2k-sandbox .clbi-y2k-guest {
/* -----------------------------------------
padding:6px;
10. Responsive
border-width:1px;
----------------------------------------- */
border-style:solid;
 
border-color:var(--y2k-line-top) var(--y2k-line-side) var(--y2k-line-bottom) var(--y2k-line-side);
@media screen and (max-width: 1180px) {
background:var(--y2k-row);
    .clbi-stylelab .clbi-console-grid {
color:#c7c7c7;
        grid-template-columns: minmax(0, 1fr);
font-size:10px;
    }
line-height:1.45;
}


/* 반응형 */
    .clbi-stylelab .clbi-module-grid {
        grid-template-columns: minmax(0, 1fr);
    }


@media screen and (max-width:1180px) {
    .clbi-stylelab .clbi-directory {
.clbi-y2k-sandbox .clbi-y2k-nav ul {
        table-layout: auto !important;
flex-wrap:wrap;
    }
}


.clbi-y2k-sandbox .clbi-y2k-nav li {
    .clbi-stylelab .clbi-directory,
flex:1 1 33.333%;
    .clbi-stylelab .clbi-directory tbody,
border-bottom:1px solid var(--y2k-line-bottom);
    .clbi-stylelab .clbi-directory tr,
}
    .clbi-stylelab .clbi-directory td {
        display: block !important;
        width: 100% !important;
    }


.clbi-y2k-sandbox .clbi-y2k-hero-body {
    .clbi-stylelab .clbi-directory td {
grid-template-columns:minmax(0,1fr);
        border-right: none !important;
}
        border-bottom: 1px solid var(--clbi-edge-bottom) !important;
    }


.clbi-y2k-sandbox .clbi-y2k-grid {
    .clbi-stylelab .clbi-directory td:last-child {
grid-template-columns:minmax(0,1fr);
        border-bottom: none !important;
}
    }
}
}

2026년 5월 16일 (토) 19:22 판

/* =========================================
COASTLINE: BLACK ICE
MediaWiki:Test.css
Sandbox-only style test
Matte gunmetal official archive console
========================================= */

/*
Scope rule:
- This file is globally imported, but every rule is scoped to .clbi-stylelab.
- Do not style body, page-대문, top navigation, sidebars, or global layout here.
*/

/* -----------------------------------------
0. Style tokens
----------------------------------------- */

.clbi-stylelab {
    --clbi-bg-page: #070707;
    --clbi-bg-shell: #0b0b0b;
    --clbi-bg-frame: #101010;
    --clbi-bg-frame-2: #141414;
    --clbi-bg-title: #1d1d1d;
    --clbi-bg-title-hover: #252525;
    --clbi-bg-well: #080808;
    --clbi-bg-row: #121212;
    --clbi-bg-row-alt: #151515;

    --clbi-edge-top: #555555;
    --clbi-edge-side: #2b2b2b;
    --clbi-edge-bottom: #050505;
    --clbi-edge-soft: #202020;
    --clbi-edge-mid: #333333;

    --clbi-text-main: #e2e2e2;
    --clbi-text-soft: #c8c8c8;
    --clbi-text-dim: #8a8a8a;
    --clbi-text-faint: #626262;

    --clbi-accent: #854369;
    --clbi-accent-bright: #b65d8f;

    --clbi-gap: 8px;
    --clbi-gap-tight: 6px;
    --clbi-pad: 8px;
    --clbi-title-h: 24px;
    --clbi-row-h: 22px;

    width: 100%;
    margin: 0 auto;
    padding: var(--clbi-gap);
    color: var(--clbi-text-main);
    background:
        linear-gradient(var(--clbi-bg-page), var(--clbi-bg-page)),
        #000;
    font-size: 11px;
    line-height: 1.5;
    box-sizing: border-box;
}

.clbi-stylelab *,
.clbi-stylelab *::before,
.clbi-stylelab *::after {
    box-sizing: border-box;
}

.clbi-stylelab a {
    color: var(--clbi-text-main) !important;
    text-decoration: none !important;
}

.clbi-stylelab a:hover {
    color: #ffffff !important;
    text-decoration: underline !important;
}

/* -----------------------------------------
1. Frame system
North-light rule:
top bright / sides neutral / bottom dark
----------------------------------------- */

.clbi-stylelab .clbi-frame,
.clbi-stylelab .clbi-logo,
.clbi-stylelab .clbi-directory,
.clbi-stylelab .clbi-console,
.clbi-stylelab .clbi-panel,
.clbi-stylelab .clbi-ticker {
    border: 1px solid;
    border-color:
        var(--clbi-edge-top)
        var(--clbi-edge-side)
        var(--clbi-edge-bottom)
        var(--clbi-edge-side);
    background: var(--clbi-bg-frame);
    border-radius: 0;
    box-shadow: none;
    outline: none;
    overflow: hidden;
}

.clbi-stylelab .clbi-titlebar {
    min-height: var(--clbi-title-h);
    padding: 0 var(--clbi-pad);
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: var(--clbi-gap);
    background: var(--clbi-bg-title);
    border-bottom: 1px solid var(--clbi-edge-bottom);
    color: #f0f0f0;
    font-size: 10px;
    font-weight: 700;
    line-height: var(--clbi-title-h);
    white-space: nowrap;
    overflow: hidden;
    text-shadow: 1px 1px 0 #000;
}

.clbi-stylelab .clbi-titlebar span {
    overflow: hidden;
    text-overflow: ellipsis;
}

.clbi-stylelab .clbi-well {
    border: 1px solid var(--clbi-edge-soft);
    background: var(--clbi-bg-well);
}

/* -----------------------------------------
2. Header / logo
----------------------------------------- */

.clbi-stylelab .clbi-logo {
    width: 100%;
    margin: 0 0 var(--clbi-gap);
    padding: 10px 0 8px;
    text-align: center;
    line-height: 0;
}

.clbi-stylelab .clbi-logo a,
.clbi-stylelab .clbi-logo .mw-file-description {
    display: inline-block;
    line-height: 0;
}

.clbi-stylelab .clbi-logo img,
.clbi-stylelab .clbi-logo .mw-file-element {
    width: 720px;
    max-width: 88%;
    height: auto;
    filter:
        grayscale(1)
        contrast(1.04)
        brightness(1.02);
}

/* -----------------------------------------
3. Directory strip
This is a test component, not a global navigation replacement.
----------------------------------------- */

.clbi-stylelab .clbi-directory {
    width: 100%;
    margin: 0 0 var(--clbi-gap) !important;
    border-collapse: collapse !important;
    table-layout: fixed !important;
}

.clbi-stylelab .clbi-directory tbody,
.clbi-stylelab .clbi-directory tr {
    width: 100%;
}

.clbi-stylelab .clbi-directory td {
    margin: 0 !important;
    padding: 0 !important;
    border: none !important;
    border-right: 1px solid var(--clbi-edge-bottom) !important;
    background: var(--clbi-bg-frame-2) !important;
    vertical-align: middle !important;
    text-align: center !important;
}

.clbi-stylelab .clbi-directory td:last-child {
    border-right: none !important;
}

.clbi-stylelab .clbi-directory a {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 100% !important;
    min-height: 30px !important;
    padding: 7px 6px 6px !important;
    color: var(--clbi-text-main) !important;
    font-size: 10px !important;
    font-weight: 700 !important;
    line-height: 1.2 !important;
    text-align: center !important;
    text-shadow: 1px 1px 0 #000 !important;
}

.clbi-stylelab .clbi-directory td:hover,
.clbi-stylelab .clbi-directory td:hover a {
    background: var(--clbi-bg-title-hover) !important;
    color: #ffffff !important;
    text-decoration: none !important;
}

/* -----------------------------------------
4. Main console
----------------------------------------- */

.clbi-stylelab .clbi-console {
    width: 100%;
    margin: 0 0 var(--clbi-gap);
    padding: var(--clbi-gap-tight);
}

.clbi-stylelab .clbi-console-grid {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 260px;
    gap: var(--clbi-gap-tight);
}

.clbi-stylelab .clbi-main-screen,
.clbi-stylelab .clbi-side-screen {
    min-width: 0;
    border: 1px solid var(--clbi-edge-soft);
    background: var(--clbi-bg-well);
}

.clbi-stylelab .clbi-main-screen {
    min-height: 260px;
    padding: 18px 18px 16px;
}

.clbi-stylelab .clbi-main-screen h2 {
    margin: 0 0 12px !important;
    padding: 0 0 8px !important;
    border-bottom: 1px solid var(--clbi-edge-soft) !important;
    color: #f4f4f4 !important;
    font-size: 22px !important;
    line-height: 1.25 !important;
    text-align: center !important;
    text-shadow: 1px 1px 0 #000 !important;
}

.clbi-stylelab .clbi-main-screen p {
    max-width: 800px;
    margin: 0 auto 10px;
    color: #d8d8d8;
    font-size: 12px;
    line-height: 1.72;
    text-align: center;
    text-shadow: 1px 1px 0 #000;
}

.clbi-stylelab .clbi-side-screen {
    padding: var(--clbi-pad);
}

/* -----------------------------------------
5. Small data tables
----------------------------------------- */

.clbi-stylelab .clbi-data-title {
    min-height: 22px;
    margin: 0 0 6px;
    padding: 5px 7px;
    border: 1px solid;
    border-color:
        var(--clbi-edge-top)
        var(--clbi-edge-side)
        var(--clbi-edge-bottom)
        var(--clbi-edge-side);
    background: var(--clbi-bg-title);
    color: #f0f0f0;
    font-size: 10px;
    font-weight: 700;
    line-height: 1.2;
    text-shadow: 1px 1px 0 #000;
}

.clbi-stylelab .clbi-data-table {
    width: 100%;
    margin: 0;
    border-collapse: collapse;
    table-layout: fixed;
    font-size: 10px;
}

.clbi-stylelab .clbi-data-table td {
    padding: 5px 6px;
    border: 1px solid var(--clbi-edge-soft);
    background: #111;
    color: var(--clbi-text-soft);
    vertical-align: middle;
}

.clbi-stylelab .clbi-data-table td:first-child {
    width: 72px;
    color: var(--clbi-text-dim);
    background: #0b0b0b;
}

/* -----------------------------------------
6. Ticker
----------------------------------------- */

.clbi-stylelab .clbi-ticker {
    height: 22px;
    margin: 0 0 var(--clbi-gap-tight);
    padding: 0 var(--clbi-pad);
    color: #bdbdbd;
    background: #171717;
    font-size: 10px;
    line-height: 22px;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    text-shadow: 1px 1px 0 #000;
}

/* -----------------------------------------
7. Lower modules
----------------------------------------- */

.clbi-stylelab .clbi-module-grid {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) 280px;
    gap: var(--clbi-gap-tight);
}

.clbi-stylelab .clbi-panel {
    min-width: 0;
}

.clbi-stylelab .clbi-panel-body {
    padding: var(--clbi-pad);
    background: var(--clbi-bg-well);
}

.clbi-stylelab .clbi-record-list {
    margin: 0 !important;
    padding: 0 !important;
    list-style: none !important;
}

.clbi-stylelab .clbi-record-list li {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: var(--clbi-gap);
    min-height: var(--clbi-row-h);
    margin: 0;
    padding: 4px 2px;
    border-bottom: 1px solid var(--clbi-edge-soft);
    color: var(--clbi-text-soft);
    line-height: 1.35;
}

.clbi-stylelab .clbi-record-list li:first-child {
    border-top: 1px solid var(--clbi-edge-soft);
}

.clbi-stylelab .clbi-record-list li span:first-child {
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.clbi-stylelab .clbi-meta {
    color: var(--clbi-text-dim);
    white-space: nowrap;
    font-size: 9px;
}

.clbi-stylelab .clbi-status-tag {
    display: inline-block;
    min-width: 34px;
    padding: 1px 4px;
    border-left: 2px solid var(--clbi-accent);
    background: #161616;
    color: var(--clbi-text-soft);
    font-size: 9px;
    text-align: center;
}

/* -----------------------------------------
8. Archive status
----------------------------------------- */

.clbi-stylelab .clbi-status-grid {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
    gap: var(--clbi-gap-tight);
    margin: 0 0 var(--clbi-gap-tight);
}

.clbi-stylelab .clbi-counter {
    min-width: 0;
    padding: 7px 6px;
    border: 1px solid var(--clbi-edge-soft);
    background: #070707;
    text-align: center;
}

.clbi-stylelab .clbi-counter b {
    display: block;
    color: #f0f0f0;
    font-family: Consolas, Monaco, monospace !important;
    font-size: 18px;
    line-height: 1.1;
    text-shadow: 1px 1px 0 #000;
}

.clbi-stylelab .clbi-counter span {
    display: block;
    margin-top: 3px;
    color: var(--clbi-text-dim);
    font-size: 9px;
}

.clbi-stylelab .clbi-guestbook {
    padding: 7px;
    border: 1px solid var(--clbi-edge-soft);
    background: var(--clbi-bg-row);
    color: var(--clbi-text-soft);
    font-size: 10px;
    line-height: 1.45;
}

.clbi-stylelab .clbi-guestbook b {
    color: #eeeeee;
}

/* -----------------------------------------
9. Manual samples
----------------------------------------- */

.clbi-stylelab .clbi-sample-row {
    display: grid;
    grid-template-columns: 150px minmax(0, 1fr);
    gap: var(--clbi-gap-tight);
    padding: 5px 0;
    border-bottom: 1px solid var(--clbi-edge-soft);
}

.clbi-stylelab .clbi-sample-row:first-child {
    border-top: 1px solid var(--clbi-edge-soft);
}

.clbi-stylelab .clbi-sample-label {
    color: var(--clbi-text-dim);
    font-size: 10px;
}

.clbi-stylelab .clbi-sample-value {
    color: var(--clbi-text-soft);
    font-size: 10px;
}

/* -----------------------------------------
10. Responsive
----------------------------------------- */

@media screen and (max-width: 1180px) {
    .clbi-stylelab .clbi-console-grid {
        grid-template-columns: minmax(0, 1fr);
    }

    .clbi-stylelab .clbi-module-grid {
        grid-template-columns: minmax(0, 1fr);
    }

    .clbi-stylelab .clbi-directory {
        table-layout: auto !important;
    }

    .clbi-stylelab .clbi-directory,
    .clbi-stylelab .clbi-directory tbody,
    .clbi-stylelab .clbi-directory tr,
    .clbi-stylelab .clbi-directory td {
        display: block !important;
        width: 100% !important;
    }

    .clbi-stylelab .clbi-directory td {
        border-right: none !important;
        border-bottom: 1px solid var(--clbi-edge-bottom) !important;
    }

    .clbi-stylelab .clbi-directory td:last-child {
        border-bottom: none !important;
    }
}