편집 요약 없음 |
편집 요약 없음 |
||
| 3번째 줄: | 3번째 줄: | ||
MediaWiki:Test.css | MediaWiki:Test.css | ||
Sandbox-only style test | Sandbox-only style test | ||
Matte gunmetal | Matte gunmetal archive console + WIP team motif | ||
========================================= */ | ========================================= */ | ||
/* | /* | ||
Scope | Scope: | ||
- This file is globally imported | - This file is globally imported. | ||
- | - Every visual rule is scoped to .stylelab. | ||
- No body, top-nav, sidebar, page shell, or global layout selectors. | |||
*/ | */ | ||
| 16번째 줄: | 17번째 줄: | ||
----------------------------------------- */ | ----------------------------------------- */ | ||
. | .stylelab { | ||
--surface-page:#070707; | |||
--surface-shell:#0b0b0b; | |||
--surface-frame:#101010; | |||
--surface-frame-soft:#141414; | |||
--surface-title:#1d1d1d; | |||
--surface-title-hover:#252525; | |||
--surface-well:#080808; | |||
--surface-row:#121212; | |||
--surface-row-alt:#151515; | |||
--edge-top:#555555; | |||
--edge-side:#2b2b2b; | |||
--edge-bottom:#050505; | |||
--edge-soft:#202020; | |||
--edge-mid:#333333; | |||
--text-main:#e2e2e2; | |||
--text-soft:#c8c8c8; | |||
--text-dim:#8a8a8a; | |||
--text-faint:#626262; | |||
--signal-blue:#6f8fa8; | |||
--signal-teal:#5a9b92; | |||
--signal-green:#78966c; | |||
--signal-amber:#c4a04a; | |||
--signal-red:#a85c50; | |||
--signal-gray:#9a9a9a; | |||
--wip-yellow:#f2c300; | |||
--wip-yellow-dim:#b99200; | |||
--wip-black:#050505; | |||
--gap:8px; | |||
--gap-tight:6px; | |||
--pad:8px; | |||
--title-h:24px; | |||
--row-h:22px; | |||
width:100%; | |||
margin:0 auto; | |||
padding:var(--gap); | |||
color:var(--text-main); | |||
background:var(--surface-page); | |||
font-size:11px; | |||
line-height:1.5; | |||
box-sizing:border-box; | |||
} | } | ||
. | .stylelab *, | ||
. | .stylelab *::before, | ||
. | .stylelab *::after { | ||
box-sizing:border-box; | |||
} | } | ||
. | .stylelab a { | ||
color:var(--text-main) !important; | |||
text-decoration:none !important; | |||
} | } | ||
. | .stylelab a:hover { | ||
color:#ffffff !important; | |||
text-decoration:underline !important; | |||
} | } | ||
| 81번째 줄: | 88번째 줄: | ||
----------------------------------------- */ | ----------------------------------------- */ | ||
. | .stylelab .frame, | ||
. | .stylelab .lab-logo, | ||
. | .stylelab .directory, | ||
. | .stylelab .console, | ||
. | .stylelab .panel, | ||
. | .stylelab .ticker { | ||
border:1px solid; | |||
border-color: | |||
var(--edge-top) | |||
var(--edge-side) | |||
var(--edge-bottom) | |||
var(--edge-side); | |||
background:var(--surface-frame); | |||
border-radius:0; | |||
box-shadow:none; | |||
outline:none; | |||
overflow:hidden; | |||
} | } | ||
. | .stylelab .titlebar { | ||
position:relative; | |||
min-height:var(--title-h); | |||
padding:0 var(--pad); | |||
display:flex; | |||
align-items:center; | |||
justify-content:space-between; | |||
gap:var(--gap); | |||
background:var(--surface-title); | |||
border-bottom:1px solid var(--edge-bottom); | |||
color:#f0f0f0; | |||
font-size:10px; | |||
font-weight:700; | |||
line-height:var(--title-h); | |||
white-space:nowrap; | |||
overflow:hidden; | |||
text-shadow:1px 1px 0 #000; | |||
} | } | ||
. | .stylelab .titlebar span { | ||
overflow:hidden; | |||
text-overflow:ellipsis; | |||
} | } | ||
. | .stylelab .well { | ||
border:1px solid var(--edge-soft); | |||
background:var(--surface-well); | |||
} | } | ||
/* ----------------------------------------- | /* ----------------------------------------- | ||
2. | 2. Logo | ||
----------------------------------------- */ | ----------------------------------------- */ | ||
. | .stylelab .lab-logo { | ||
width:100%; | |||
margin:0 0 var(--gap); | |||
padding:10px 0 8px; | |||
text-align:center; | |||
line-height:0; | |||
} | } | ||
. | .stylelab .lab-logo a, | ||
. | .stylelab .lab-logo .mw-file-description { | ||
display:inline-block; | |||
line-height:0; | |||
} | } | ||
. | .stylelab .lab-logo img, | ||
. | .stylelab .lab-logo .mw-file-element { | ||
width:720px; | |||
max-width:88%; | |||
height:auto; | |||
filter: | |||
grayscale(1) | |||
contrast(1.04) | |||
brightness(1.02); | |||
} | } | ||
/* ----------------------------------------- | /* ----------------------------------------- | ||
3. Directory strip | 3. Directory strip | ||
Test component only. Not a global navigation replacement. | |||
----------------------------------------- */ | ----------------------------------------- */ | ||
. | .stylelab .directory { | ||
width:100%; | |||
margin:0 0 var(--gap) !important; | |||
border-collapse:collapse !important; | |||
table-layout:fixed !important; | |||
} | } | ||
. | .stylelab .directory tbody, | ||
. | .stylelab .directory tr { | ||
width:100%; | |||
} | } | ||
. | .stylelab .directory td { | ||
margin:0 !important; | |||
padding:0 !important; | |||
border:none !important; | |||
border-right:1px solid var(--edge-bottom) !important; | |||
background:var(--surface-frame-soft) !important; | |||
vertical-align:middle !important; | |||
text-align:center !important; | |||
} | } | ||
. | .stylelab .directory td:last-child { | ||
border-right:none !important; | |||
} | } | ||
. | .stylelab .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(--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; | |||
} | } | ||
. | .stylelab .directory td:hover, | ||
. | .stylelab .directory td:hover a { | ||
background:var(--surface-title-hover) !important; | |||
color:#ffffff !important; | |||
text-decoration:none !important; | |||
} | } | ||
| 214번째 줄: | 222번째 줄: | ||
----------------------------------------- */ | ----------------------------------------- */ | ||
. | .stylelab .console { | ||
width:100%; | |||
margin:0 0 var(--gap); | |||
padding:var(--gap-tight); | |||
} | } | ||
. | .stylelab .console-grid { | ||
display:grid; | |||
grid-template-columns:minmax(0,1fr) 260px; | |||
gap:var(--gap-tight); | |||
} | } | ||
. | .stylelab .main-screen, | ||
. | .stylelab .side-screen { | ||
min-width:0; | |||
border:1px solid var(--edge-soft); | |||
background:var(--surface-well); | |||
} | } | ||
. | .stylelab .main-screen { | ||
min-height:260px; | |||
padding:18px 18px 16px; | |||
} | } | ||
. | .stylelab .main-screen h2 { | ||
margin:0 0 12px !important; | |||
padding:0 0 8px !important; | |||
border-bottom:1px solid var(--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; | |||
} | } | ||
. | .stylelab .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; | |||
} | } | ||
. | .stylelab .side-screen { | ||
padding:var(--pad); | |||
} | } | ||
/* ----------------------------------------- | /* ----------------------------------------- | ||
5. | 5. Data title + data tables | ||
----------------------------------------- */ | ----------------------------------------- */ | ||
. | .stylelab .data-title { | ||
min-height:22px; | |||
margin:0 0 6px; | |||
padding:5px 7px; | |||
border:1px solid; | |||
border-color: | |||
var(--edge-top) | |||
var(--edge-side) | |||
var(--edge-bottom) | |||
var(--edge-side); | |||
background:var(--surface-title); | |||
color:#f0f0f0; | |||
font-size:10px; | |||
font-weight:700; | |||
line-height:1.2; | |||
text-shadow:1px 1px 0 #000; | |||
} | } | ||
. | .stylelab .data-table { | ||
width:100%; | |||
margin:0; | |||
border-collapse:collapse; | |||
table-layout:fixed; | |||
font-size:10px; | |||
} | } | ||
. | .stylelab .data-table td { | ||
padding:5px 6px; | |||
border:1px solid var(--edge-soft); | |||
background:#111; | |||
color:var(--text-soft); | |||
vertical-align:middle; | |||
} | } | ||
. | .stylelab .data-table td:first-child { | ||
width:72px; | |||
color:var(--text-dim); | |||
background:#0b0b0b; | |||
} | } | ||
| 311번째 줄: | 319번째 줄: | ||
----------------------------------------- */ | ----------------------------------------- */ | ||
. | .stylelab .ticker { | ||
height:22px; | |||
margin:0 0 var(--gap-tight); | |||
padding:0 var(--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; | |||
} | } | ||
| 329번째 줄: | 337번째 줄: | ||
----------------------------------------- */ | ----------------------------------------- */ | ||
. | .stylelab .module-grid { | ||
display:grid; | |||
grid-template-columns:minmax(0,1fr) minmax(0,1fr) 280px; | |||
gap:var(--gap-tight); | |||
} | |||
.stylelab .panel { | |||
min-width:0; | |||
} | |||
.stylelab .panel-body { | |||
padding:var(--pad); | |||
background:var(--surface-well); | |||
} | |||
.stylelab .record-list { | |||
margin:0 !important; | |||
padding:0 !important; | |||
list-style:none !important; | |||
} | |||
.stylelab .record-list li { | |||
display:grid; | |||
grid-template-columns:minmax(0,1fr) auto; | |||
gap:var(--gap); | |||
min-height:var(--row-h); | |||
margin:0; | |||
padding:4px 2px; | |||
border-bottom:1px solid var(--edge-soft); | |||
color:var(--text-soft); | |||
line-height:1.35; | |||
} | } | ||
. | .stylelab .record-list li:first-child { | ||
border-top:1px solid var(--edge-soft); | |||
} | } | ||
. | .stylelab .record-list li span:first-child { | ||
min-width:0; | |||
overflow:hidden; | |||
text-overflow:ellipsis; | |||
white-space:nowrap; | |||
} | } | ||
. | .stylelab .meta { | ||
color:var(--text-dim); | |||
white-space:nowrap; | |||
font-size:9px; | |||
} | } | ||
/* ----------------------------------------- | |||
8. Status tags | |||
Small functional color only. | |||
No structural color use. | |||
----------------------------------------- */ | |||
.stylelab .status-tag { | |||
display:inline-block; | |||
min-width:34px; | |||
padding:1px 4px; | |||
border:1px solid #303030; | |||
background:#161616; | |||
color:var(--text-soft); | |||
font-size:9px; | |||
text-align:center; | |||
line-height:1.25; | |||
} | } | ||
. | .stylelab .status-tag.is-progress { | ||
border-color:#6d5b2c; | |||
color:#d3bb72; | |||
background:#19170f; | |||
} | } | ||
. | .stylelab .status-tag.is-review { | ||
border-color:#36515d; | |||
color:#8bb6c6; | |||
background:#10171a; | |||
} | } | ||
. | .stylelab .status-tag.is-wait { | ||
border-color:#484848; | |||
color:#a4a4a4; | |||
background:#151515; | |||
} | } | ||
. | .stylelab .status-tag.is-done { | ||
border-color:#3d5c38; | |||
color:#9fbe96; | |||
background:#111811; | |||
} | |||
.stylelab .status-tag.is-alert { | |||
border-color:#6a3933; | |||
color:#d48679; | |||
background:#1b1110; | |||
} | } | ||
/* ----------------------------------------- | /* ----------------------------------------- | ||
9. WIP team motif | |||
Use only where the making team is foregrounded: | |||
project tracker, production log, WIP notice, development status. | |||
----------------------------------------- */ | ----------------------------------------- */ | ||
. | .stylelab .work-panel { | ||
border-color: | |||
#6b611f | |||
var(--edge-side) | |||
var(--edge-bottom) | |||
var(--edge-side); | |||
} | } | ||
. | .stylelab .work-panel .titlebar { | ||
padding-right:6px; | |||
} | } | ||
. | .stylelab .work-panel .titlebar::after { | ||
content:""; | |||
position:absolute; | |||
left:0; | |||
right:0; | |||
bottom:0; | |||
height:3px; | |||
pointer-events:none; | |||
background: | |||
repeating-linear-gradient( | |||
45deg, | |||
var(--wip-yellow) 0 6px, | |||
var(--wip-yellow) 6px 7px, | |||
var(--wip-black) 7px 13px, | |||
var(--wip-black) 13px 14px | |||
); | |||
opacity:0.95; | |||
} | } | ||
. | .stylelab .work-badge { | ||
display:inline-flex; | |||
align-items:center; | |||
justify-content:center; | |||
height:16px; | |||
min-width:38px; | |||
padding:0 6px; | |||
border:1px solid #7a6600; | |||
background: | |||
repeating-linear-gradient( | |||
45deg, | |||
var(--wip-yellow) 0 5px, | |||
var(--wip-yellow) 5px 6px, | |||
var(--wip-black) 6px 11px, | |||
var(--wip-black) 11px 12px | |||
); | |||
color:#ffffff; | |||
font-size:9px; | |||
font-weight:700; | |||
line-height:16px; | |||
text-shadow: | |||
1px 1px 0 #000, | |||
0 0 2px #000; | |||
} | } | ||
. | .stylelab .work-panel .panel-body { | ||
position:relative; | |||
padding-left:15px; | |||
} | } | ||
. | .stylelab .work-panel .panel-body::before { | ||
content:""; | |||
position:absolute; | |||
left:6px; | |||
top:7px; | |||
bottom:7px; | |||
width:4px; | |||
pointer-events:none; | |||
background: | |||
repeating-linear-gradient( | |||
45deg, | |||
var(--wip-yellow) 0 4px, | |||
var(--wip-yellow) 4px 5px, | |||
var(--wip-black) 5px 9px, | |||
var(--wip-black) 9px 10px | |||
); | |||
opacity:0.95; | |||
} | } | ||
/* ----------------------------------------- | /* ----------------------------------------- | ||
10. Archive status | |||
Neutral data module. No WIP motif. | |||
----------------------------------------- */ | ----------------------------------------- */ | ||
. | .stylelab .status-grid { | ||
display:grid; | |||
grid-template-columns:minmax(0,1fr) minmax(0,1fr); | |||
gap:var(--gap-tight); | |||
margin:0 0 var(--gap-tight); | |||
} | } | ||
. | .stylelab .counter { | ||
min-width:0; | |||
padding:7px 6px; | |||
border:1px solid var(--edge-soft); | |||
background:#070707; | |||
text-align:center; | |||
} | } | ||
. | .stylelab .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; | |||
} | } | ||
. | .stylelab .counter span { | ||
display:block; | |||
margin-top:3px; | |||
color:var(--text-dim); | |||
font-size:9px; | |||
} | |||
.stylelab .guestbook { | |||
padding:7px; | |||
border:1px solid var(--edge-soft); | |||
background:var(--surface-row); | |||
color:var(--text-soft); | |||
font-size:10px; | |||
line-height:1.45; | |||
} | |||
.stylelab .guestbook b { | |||
color:#eeeeee; | |||
} | } | ||
/* ----------------------------------------- | /* ----------------------------------------- | ||
11. Manual samples | |||
----------------------------------------- */ | ----------------------------------------- */ | ||
.stylelab .sample-row { | |||
display:grid; | |||
grid-template-columns:150px minmax(0,1fr); | |||
gap:var(--gap-tight); | |||
padding:5px 0; | |||
border-bottom:1px solid var(--edge-soft); | |||
} | |||
.stylelab .sample-row:first-child { | |||
border-top:1px solid var(--edge-soft); | |||
} | |||
.stylelab .sample-label { | |||
color:var(--text-dim); | |||
font-size:10px; | |||
} | |||
.stylelab .sample-value { | |||
color:var(--text-soft); | |||
font-size:10px; | |||
} | |||
/* ----------------------------------------- | |||
12. Responsive | |||
----------------------------------------- */ | |||
@media screen and (max-width:1180px) { | |||
.stylelab .console-grid { | |||
grid-template-columns:minmax(0,1fr); | |||
} | |||
.stylelab .module-grid { | |||
grid-template-columns:minmax(0,1fr); | |||
} | |||
.stylelab .directory { | |||
table-layout:auto !important; | |||
} | |||
.stylelab .directory, | |||
.stylelab .directory tbody, | |||
.stylelab .directory tr, | |||
.stylelab .directory td { | |||
display:block !important; | |||
width:100% !important; | |||
} | |||
.stylelab .directory td { | |||
border-right:none !important; | |||
border-bottom:1px solid var(--edge-bottom) !important; | |||
} | |||
.stylelab .directory td:last-child { | |||
border-bottom:none !important; | |||
} | |||
} | } | ||
2026년 5월 17일 (일) 07:29 판
/* =========================================
COASTLINE: BLACK ICE
MediaWiki:Test.css
Sandbox-only style test
Matte gunmetal archive console + WIP team motif
========================================= */
/*
Scope:
- This file is globally imported.
- Every visual rule is scoped to .stylelab.
- No body, top-nav, sidebar, page shell, or global layout selectors.
*/
/* -----------------------------------------
0. Style tokens
----------------------------------------- */
.stylelab {
--surface-page:#070707;
--surface-shell:#0b0b0b;
--surface-frame:#101010;
--surface-frame-soft:#141414;
--surface-title:#1d1d1d;
--surface-title-hover:#252525;
--surface-well:#080808;
--surface-row:#121212;
--surface-row-alt:#151515;
--edge-top:#555555;
--edge-side:#2b2b2b;
--edge-bottom:#050505;
--edge-soft:#202020;
--edge-mid:#333333;
--text-main:#e2e2e2;
--text-soft:#c8c8c8;
--text-dim:#8a8a8a;
--text-faint:#626262;
--signal-blue:#6f8fa8;
--signal-teal:#5a9b92;
--signal-green:#78966c;
--signal-amber:#c4a04a;
--signal-red:#a85c50;
--signal-gray:#9a9a9a;
--wip-yellow:#f2c300;
--wip-yellow-dim:#b99200;
--wip-black:#050505;
--gap:8px;
--gap-tight:6px;
--pad:8px;
--title-h:24px;
--row-h:22px;
width:100%;
margin:0 auto;
padding:var(--gap);
color:var(--text-main);
background:var(--surface-page);
font-size:11px;
line-height:1.5;
box-sizing:border-box;
}
.stylelab *,
.stylelab *::before,
.stylelab *::after {
box-sizing:border-box;
}
.stylelab a {
color:var(--text-main) !important;
text-decoration:none !important;
}
.stylelab a:hover {
color:#ffffff !important;
text-decoration:underline !important;
}
/* -----------------------------------------
1. Frame system
North-light rule:
top bright / sides neutral / bottom dark
----------------------------------------- */
.stylelab .frame,
.stylelab .lab-logo,
.stylelab .directory,
.stylelab .console,
.stylelab .panel,
.stylelab .ticker {
border:1px solid;
border-color:
var(--edge-top)
var(--edge-side)
var(--edge-bottom)
var(--edge-side);
background:var(--surface-frame);
border-radius:0;
box-shadow:none;
outline:none;
overflow:hidden;
}
.stylelab .titlebar {
position:relative;
min-height:var(--title-h);
padding:0 var(--pad);
display:flex;
align-items:center;
justify-content:space-between;
gap:var(--gap);
background:var(--surface-title);
border-bottom:1px solid var(--edge-bottom);
color:#f0f0f0;
font-size:10px;
font-weight:700;
line-height:var(--title-h);
white-space:nowrap;
overflow:hidden;
text-shadow:1px 1px 0 #000;
}
.stylelab .titlebar span {
overflow:hidden;
text-overflow:ellipsis;
}
.stylelab .well {
border:1px solid var(--edge-soft);
background:var(--surface-well);
}
/* -----------------------------------------
2. Logo
----------------------------------------- */
.stylelab .lab-logo {
width:100%;
margin:0 0 var(--gap);
padding:10px 0 8px;
text-align:center;
line-height:0;
}
.stylelab .lab-logo a,
.stylelab .lab-logo .mw-file-description {
display:inline-block;
line-height:0;
}
.stylelab .lab-logo img,
.stylelab .lab-logo .mw-file-element {
width:720px;
max-width:88%;
height:auto;
filter:
grayscale(1)
contrast(1.04)
brightness(1.02);
}
/* -----------------------------------------
3. Directory strip
Test component only. Not a global navigation replacement.
----------------------------------------- */
.stylelab .directory {
width:100%;
margin:0 0 var(--gap) !important;
border-collapse:collapse !important;
table-layout:fixed !important;
}
.stylelab .directory tbody,
.stylelab .directory tr {
width:100%;
}
.stylelab .directory td {
margin:0 !important;
padding:0 !important;
border:none !important;
border-right:1px solid var(--edge-bottom) !important;
background:var(--surface-frame-soft) !important;
vertical-align:middle !important;
text-align:center !important;
}
.stylelab .directory td:last-child {
border-right:none !important;
}
.stylelab .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(--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;
}
.stylelab .directory td:hover,
.stylelab .directory td:hover a {
background:var(--surface-title-hover) !important;
color:#ffffff !important;
text-decoration:none !important;
}
/* -----------------------------------------
4. Main console
----------------------------------------- */
.stylelab .console {
width:100%;
margin:0 0 var(--gap);
padding:var(--gap-tight);
}
.stylelab .console-grid {
display:grid;
grid-template-columns:minmax(0,1fr) 260px;
gap:var(--gap-tight);
}
.stylelab .main-screen,
.stylelab .side-screen {
min-width:0;
border:1px solid var(--edge-soft);
background:var(--surface-well);
}
.stylelab .main-screen {
min-height:260px;
padding:18px 18px 16px;
}
.stylelab .main-screen h2 {
margin:0 0 12px !important;
padding:0 0 8px !important;
border-bottom:1px solid var(--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;
}
.stylelab .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;
}
.stylelab .side-screen {
padding:var(--pad);
}
/* -----------------------------------------
5. Data title + data tables
----------------------------------------- */
.stylelab .data-title {
min-height:22px;
margin:0 0 6px;
padding:5px 7px;
border:1px solid;
border-color:
var(--edge-top)
var(--edge-side)
var(--edge-bottom)
var(--edge-side);
background:var(--surface-title);
color:#f0f0f0;
font-size:10px;
font-weight:700;
line-height:1.2;
text-shadow:1px 1px 0 #000;
}
.stylelab .data-table {
width:100%;
margin:0;
border-collapse:collapse;
table-layout:fixed;
font-size:10px;
}
.stylelab .data-table td {
padding:5px 6px;
border:1px solid var(--edge-soft);
background:#111;
color:var(--text-soft);
vertical-align:middle;
}
.stylelab .data-table td:first-child {
width:72px;
color:var(--text-dim);
background:#0b0b0b;
}
/* -----------------------------------------
6. Ticker
----------------------------------------- */
.stylelab .ticker {
height:22px;
margin:0 0 var(--gap-tight);
padding:0 var(--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
----------------------------------------- */
.stylelab .module-grid {
display:grid;
grid-template-columns:minmax(0,1fr) minmax(0,1fr) 280px;
gap:var(--gap-tight);
}
.stylelab .panel {
min-width:0;
}
.stylelab .panel-body {
padding:var(--pad);
background:var(--surface-well);
}
.stylelab .record-list {
margin:0 !important;
padding:0 !important;
list-style:none !important;
}
.stylelab .record-list li {
display:grid;
grid-template-columns:minmax(0,1fr) auto;
gap:var(--gap);
min-height:var(--row-h);
margin:0;
padding:4px 2px;
border-bottom:1px solid var(--edge-soft);
color:var(--text-soft);
line-height:1.35;
}
.stylelab .record-list li:first-child {
border-top:1px solid var(--edge-soft);
}
.stylelab .record-list li span:first-child {
min-width:0;
overflow:hidden;
text-overflow:ellipsis;
white-space:nowrap;
}
.stylelab .meta {
color:var(--text-dim);
white-space:nowrap;
font-size:9px;
}
/* -----------------------------------------
8. Status tags
Small functional color only.
No structural color use.
----------------------------------------- */
.stylelab .status-tag {
display:inline-block;
min-width:34px;
padding:1px 4px;
border:1px solid #303030;
background:#161616;
color:var(--text-soft);
font-size:9px;
text-align:center;
line-height:1.25;
}
.stylelab .status-tag.is-progress {
border-color:#6d5b2c;
color:#d3bb72;
background:#19170f;
}
.stylelab .status-tag.is-review {
border-color:#36515d;
color:#8bb6c6;
background:#10171a;
}
.stylelab .status-tag.is-wait {
border-color:#484848;
color:#a4a4a4;
background:#151515;
}
.stylelab .status-tag.is-done {
border-color:#3d5c38;
color:#9fbe96;
background:#111811;
}
.stylelab .status-tag.is-alert {
border-color:#6a3933;
color:#d48679;
background:#1b1110;
}
/* -----------------------------------------
9. WIP team motif
Use only where the making team is foregrounded:
project tracker, production log, WIP notice, development status.
----------------------------------------- */
.stylelab .work-panel {
border-color:
#6b611f
var(--edge-side)
var(--edge-bottom)
var(--edge-side);
}
.stylelab .work-panel .titlebar {
padding-right:6px;
}
.stylelab .work-panel .titlebar::after {
content:"";
position:absolute;
left:0;
right:0;
bottom:0;
height:3px;
pointer-events:none;
background:
repeating-linear-gradient(
45deg,
var(--wip-yellow) 0 6px,
var(--wip-yellow) 6px 7px,
var(--wip-black) 7px 13px,
var(--wip-black) 13px 14px
);
opacity:0.95;
}
.stylelab .work-badge {
display:inline-flex;
align-items:center;
justify-content:center;
height:16px;
min-width:38px;
padding:0 6px;
border:1px solid #7a6600;
background:
repeating-linear-gradient(
45deg,
var(--wip-yellow) 0 5px,
var(--wip-yellow) 5px 6px,
var(--wip-black) 6px 11px,
var(--wip-black) 11px 12px
);
color:#ffffff;
font-size:9px;
font-weight:700;
line-height:16px;
text-shadow:
1px 1px 0 #000,
0 0 2px #000;
}
.stylelab .work-panel .panel-body {
position:relative;
padding-left:15px;
}
.stylelab .work-panel .panel-body::before {
content:"";
position:absolute;
left:6px;
top:7px;
bottom:7px;
width:4px;
pointer-events:none;
background:
repeating-linear-gradient(
45deg,
var(--wip-yellow) 0 4px,
var(--wip-yellow) 4px 5px,
var(--wip-black) 5px 9px,
var(--wip-black) 9px 10px
);
opacity:0.95;
}
/* -----------------------------------------
10. Archive status
Neutral data module. No WIP motif.
----------------------------------------- */
.stylelab .status-grid {
display:grid;
grid-template-columns:minmax(0,1fr) minmax(0,1fr);
gap:var(--gap-tight);
margin:0 0 var(--gap-tight);
}
.stylelab .counter {
min-width:0;
padding:7px 6px;
border:1px solid var(--edge-soft);
background:#070707;
text-align:center;
}
.stylelab .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;
}
.stylelab .counter span {
display:block;
margin-top:3px;
color:var(--text-dim);
font-size:9px;
}
.stylelab .guestbook {
padding:7px;
border:1px solid var(--edge-soft);
background:var(--surface-row);
color:var(--text-soft);
font-size:10px;
line-height:1.45;
}
.stylelab .guestbook b {
color:#eeeeee;
}
/* -----------------------------------------
11. Manual samples
----------------------------------------- */
.stylelab .sample-row {
display:grid;
grid-template-columns:150px minmax(0,1fr);
gap:var(--gap-tight);
padding:5px 0;
border-bottom:1px solid var(--edge-soft);
}
.stylelab .sample-row:first-child {
border-top:1px solid var(--edge-soft);
}
.stylelab .sample-label {
color:var(--text-dim);
font-size:10px;
}
.stylelab .sample-value {
color:var(--text-soft);
font-size:10px;
}
/* -----------------------------------------
12. Responsive
----------------------------------------- */
@media screen and (max-width:1180px) {
.stylelab .console-grid {
grid-template-columns:minmax(0,1fr);
}
.stylelab .module-grid {
grid-template-columns:minmax(0,1fr);
}
.stylelab .directory {
table-layout:auto !important;
}
.stylelab .directory,
.stylelab .directory tbody,
.stylelab .directory tr,
.stylelab .directory td {
display:block !important;
width:100% !important;
}
.stylelab .directory td {
border-right:none !important;
border-bottom:1px solid var(--edge-bottom) !important;
}
.stylelab .directory td:last-child {
border-bottom:none !important;
}
}