Skip to main content

max / makenotwork

5.2 KB · 306 lines History Blame Raw
1 /* DIRECTORY TABLE (forum home) */
2
3 .directory-table {
4 width: 100%;
5 border-collapse: collapse;
6 font-size: 0.85rem;
7 font-family: "Lato", sans-serif;
8 }
9
10 .directory-table thead {
11 background: var(--surface-muted);
12 }
13
14 .directory-table th {
15 text-align: left;
16 padding: 0.35rem 0.75rem;
17 font-family: "IBM Plex Mono", monospace;
18 font-size: 0.7rem;
19 font-weight: normal;
20 text-transform: uppercase;
21 letter-spacing: 0.05em;
22 color: var(--text-muted);
23 }
24
25 .directory-table tbody tr {
26 transition: background 0.1s ease;
27 }
28
29 .directory-table tbody tr:nth-child(odd) {
30 background: var(--surface-alt);
31 }
32
33 .directory-table tbody tr:nth-child(even) {
34 background: var(--light-background);
35 }
36
37 .directory-table tbody tr:hover {
38 background: var(--surface-muted);
39 }
40
41 .directory-table td {
42 padding: 0.4rem 0.75rem;
43 border-top: 1px solid var(--border);
44 }
45
46 .directory-name {
47 font-family: "Young Serif", serif;
48 font-size: 1rem;
49 }
50
51 .directory-name a {
52 color: var(--detail);
53 text-decoration: none;
54 }
55
56 .directory-name a:hover {
57 text-decoration: underline;
58 }
59
60 .directory-desc {
61 font-size: 0.8rem;
62 color: var(--text-muted);
63 margin-top: 0.1rem;
64 }
65
66 .directory-table .col-creator {
67 white-space: nowrap;
68 width: 130px;
69 font-family: "IBM Plex Mono", monospace;
70 font-size: 0.8rem;
71 }
72
73 .directory-table .col-type {
74 white-space: nowrap;
75 width: 100px;
76 font-family: "IBM Plex Mono", monospace;
77 font-size: 0.8rem;
78 color: var(--text-muted);
79 }
80
81 .directory-table .col-items {
82 white-space: nowrap;
83 width: 60px;
84 text-align: right;
85 font-family: "IBM Plex Mono", monospace;
86 font-size: 0.8rem;
87 color: var(--text-muted);
88 }
89
90 /* DATA TABLE (dense thread listings) */
91
92 .data-table {
93 width: 100%;
94 border-collapse: collapse;
95 font-size: 0.85rem;
96 font-family: "Lato", sans-serif;
97 margin-bottom: 1rem;
98 }
99
100 .data-table thead {
101 background: var(--surface-muted);
102 }
103
104 .data-table th {
105 text-align: left;
106 padding: 0.35rem 0.75rem;
107 font-family: "IBM Plex Mono", monospace;
108 font-size: 0.7rem;
109 font-weight: normal;
110 text-transform: uppercase;
111 letter-spacing: 0.05em;
112 color: var(--text-muted);
113 }
114
115 .data-table th.sortable {
116 cursor: pointer;
117 transition: background 0.2s ease;
118 user-select: none;
119 }
120
121 .data-table th.sortable:hover {
122 background: var(--border);
123 }
124
125 .data-table th.sortable a {
126 color: inherit;
127 text-decoration: none;
128 display: block;
129 }
130
131 .data-table th.sortable a:hover {
132 text-decoration: none;
133 }
134
135 .data-table th.sort-active {
136 color: var(--detail);
137 }
138
139 .data-table tbody tr {
140 transition: background 0.1s ease;
141 }
142
143 .data-table tbody tr:nth-child(odd) {
144 background: var(--surface-alt);
145 }
146
147 .data-table tbody tr:nth-child(even) {
148 background: var(--light-background);
149 }
150
151 .data-table tbody tr:hover {
152 background: var(--surface-muted);
153 }
154
155 .data-table td {
156 padding: 0.4rem 0.75rem;
157 border-top: 1px solid var(--border);
158 }
159
160 /* Thread-specific table columns */
161 .data-table .thread-title {
162 font-weight: bold;
163 }
164
165 .data-table .thread-title a {
166 color: var(--detail);
167 text-decoration: none;
168 }
169
170 .data-table .thread-title a:hover {
171 text-decoration: underline;
172 }
173
174 .data-table .col-replies,
175 .data-table .col-activity {
176 white-space: nowrap;
177 text-align: right;
178 width: 100px;
179 }
180
181 .data-table .col-author {
182 white-space: nowrap;
183 width: 130px;
184 }
185
186 /* Member list columns */
187 .data-table .col-role {
188 white-space: nowrap;
189 width: 100px;
190 }
191
192 .data-table .col-joined {
193 white-space: nowrap;
194 text-align: right;
195 width: 100px;
196 font-family: "IBM Plex Mono", monospace;
197 font-size: 0.8rem;
198 color: var(--text-muted);
199 }
200
201 /* Pinned row highlight */
202 .data-table tr.pinned {
203 background: var(--surface-muted);
204 }
205
206 .data-table tr.pinned:hover {
207 background: var(--border);
208 }
209
210 /* BADGES */
211
212 .badge {
213 display: inline-block;
214 padding: 0.15rem 0.4rem;
215 font-size: 0.7rem;
216 font-family: "IBM Plex Mono", monospace;
217 background: var(--primary-dark);
218 color: var(--primary-light);
219 }
220
221 .badge-success {
222 background: var(--success);
223 }
224
225 .badge-warning {
226 background: var(--warning);
227 }
228
229 .badge-danger {
230 background: var(--danger);
231 }
232
233 .badge-muted {
234 background: var(--text-muted);
235 }
236
237 .badge-ban {
238 background: var(--danger);
239 color: var(--primary-light);
240 }
241
242 .badge-mute-type {
243 background: var(--warning);
244 color: var(--primary-light);
245 }
246
247 /* Role badges */
248 .badge-role-owner {
249 background: var(--primary-dark);
250 color: var(--primary-light);
251 }
252
253 .badge-role-moderator {
254 background: var(--warning);
255 color: var(--primary-light);
256 }
257
258 .badge-role-member {
259 background: var(--surface-muted);
260 color: var(--detail);
261 border: 1px solid var(--border);
262 }
263
264 .badge-role-guest {
265 background: var(--surface-muted);
266 color: var(--text-muted);
267 border: 1px solid var(--border);
268 }
269
270 /* Thread status badges, text-only */
271 .badge-pinned {
272 background: var(--surface-muted);
273 color: var(--detail);
274 border: 1px solid var(--border);
275 }
276
277 .badge-locked {
278 background: var(--surface-muted);
279 color: var(--text-muted);
280 border: 1px solid var(--border);
281 }
282
283 /* BREADCRUMBS */
284
285 .breadcrumb {
286 font-size: 0.8rem;
287 color: var(--text-muted);
288 margin-bottom: 0.5rem;
289 font-family: "IBM Plex Mono", monospace;
290 }
291
292 .breadcrumb a {
293 color: var(--detail);
294 text-decoration: none;
295 }
296
297 .breadcrumb a:hover {
298 text-decoration: underline;
299 }
300
301 .breadcrumb .sep {
302 margin: 0 0.3rem;
303 opacity: 0.5;
304 }
305
306