gabriel / musehub public
_issues.scss
485 lines 8.9 KB
Raw
sha256:34035d72cef530c1ab9d6a6f53be18d803dde705fc3157617d70352a96d0747b Merge branch 'fix/wire-push-external-parent-manifest' into dev Human 8 days ago
1 // ─────────────────────────────────────────────────────────────────────────────
2 // Page: Issues (/*/issues + /*/issues/* + /*/issues/new)
3 // File: src/scss/pages/_issues.scss
4 //
5 // STRUCTURAL LAYOUT ONLY — zero colors, zero typography here.
6 // Visual rules live in components/_issues.scss.
7 // ─────────────────────────────────────────────────────────────────────────────
8
9 // ── Issue list page (.isl-*) ──────────────────────────────────────────────────
10
11 .isl-page {
12 display: flex;
13 flex-direction: column;
14 gap: var(--space-4);
15 }
16
17 // Bounded-height, independently-scrolling columns — not position: sticky.
18 // See _layout.scss's .layout-two-col/.layout-sidebar comment for why.
19 .isl-layout {
20 display: grid;
21 grid-template-columns: 1fr 220px;
22 gap: var(--space-4);
23 align-items: start;
24 min-height: 0;
25 height: calc(100dvh - var(--sticky-offset, var(--header-height)) - var(--space-4));
26
27 @media (max-width: 900px) {
28 grid-template-columns: 1fr;
29 height: auto;
30 }
31 }
32
33 .isl-main {
34 min-width: 0;
35 min-height: 0;
36 display: flex;
37 flex-direction: column;
38 gap: var(--space-3);
39 overflow-y: auto;
40 scrollbar-width: thin;
41 scrollbar-color: var(--border-default) transparent;
42
43 @media (max-width: 900px) { overflow-y: visible; }
44 }
45
46 .isl-sidebar {
47 display: flex;
48 flex-direction: column;
49 gap: 0;
50 min-height: 0;
51 overflow-y: auto;
52 scrollbar-width: thin;
53 scrollbar-color: var(--border-default) transparent;
54
55 @media (max-width: 900px) {
56 overflow-y: visible;
57 display: none;
58 }
59 }
60
61 .isl-list { display: flex; flex-direction: column; }
62
63 .isl-row-body {
64 flex: 1;
65 min-width: 0;
66 display: flex;
67 flex-direction: column;
68 gap: 5px;
69 }
70
71 .isl-row-title-line {
72 display: flex;
73 align-items: baseline;
74 gap: 8px;
75 }
76
77 .isl-row-meta-line {
78 display: flex;
79 align-items: center;
80 gap: 6px;
81 flex-wrap: wrap;
82 }
83
84 .isl-row-intel-line {
85 display: flex;
86 align-items: center;
87 gap: 5px;
88 flex-wrap: wrap;
89 }
90
91 .isl-row-right {
92 display: flex;
93 flex-direction: column;
94 align-items: flex-end;
95 gap: 4px;
96 flex-shrink: 0;
97 }
98
99 .isl-empty {
100 display: flex;
101 flex-direction: column;
102 align-items: center;
103 justify-content: center;
104 padding: var(--space-12) var(--space-6);
105 text-align: center;
106 gap: var(--space-3);
107 }
108
109 .isl-pagination {
110 display: flex;
111 align-items: center;
112 justify-content: center;
113 gap: var(--space-2);
114 padding: var(--space-4) 0;
115 }
116
117 .isl-tpl-grid {
118 display: grid;
119 grid-template-columns: repeat(auto-fill, minmax(220px, 1fr));
120 gap: var(--space-3);
121 padding: var(--space-3) var(--space-4);
122 }
123
124 .isl-sb-list {
125 display: flex;
126 flex-direction: column;
127 gap: 0;
128 }
129
130 .isl-sb-labels { display: flex; flex-direction: column; gap: 4px; }
131 .isl-sb-people { display: flex; flex-direction: column; gap: 4px; }
132
133 .isl-sb-intel-list {
134 display: flex;
135 flex-direction: column;
136 gap: 2px;
137 }
138
139 .isl-sb-intel-body {
140 display: flex;
141 flex-direction: column;
142 gap: 2px;
143 flex: 1;
144 min-width: 0;
145 }
146
147 .isl-sb-agent-list {
148 display: flex;
149 flex-direction: column;
150 gap: 4px;
151 }
152
153 .isl-stat-strip {
154 display: flex;
155 align-items: center;
156 justify-content: space-between;
157 gap: var(--space-3);
158 flex-wrap: wrap;
159 }
160
161 .isl-stat-counts {
162 display: flex;
163 align-items: center;
164 gap: 6px;
165 flex-wrap: wrap;
166 }
167
168 .isl-strip-filters {
169 display: flex;
170 align-items: center;
171 gap: var(--space-2);
172 flex-shrink: 0;
173 }
174
175 .isl-tabs {
176 display: flex;
177 align-items: center;
178 }
179
180 .isl-filters {
181 display: flex;
182 align-items: center;
183 gap: var(--space-2);
184 margin-left: auto;
185 flex-wrap: wrap;
186 padding: var(--space-2) 0;
187 }
188
189 // ── Issue detail page (.isd-*) ─────────────────────────────────────────────────
190
191 .isd-page { min-height: 100dvh; }
192
193 .isd-hero-inner {
194 position: relative;
195 max-width: 1200px;
196 margin: 0 auto;
197 padding: var(--space-8) var(--space-6) var(--space-5);
198 }
199
200 .isd-eyebrow {
201 display: flex;
202 align-items: center;
203 justify-content: space-between;
204 gap: var(--space-3);
205 flex-wrap: wrap;
206 margin-bottom: var(--space-4);
207 }
208
209 .isd-eyebrow-left {
210 display: flex;
211 align-items: center;
212 gap: var(--space-2);
213 flex-wrap: wrap;
214 }
215
216 .isd-eyebrow-right {
217 display: flex;
218 align-items: center;
219 gap: var(--space-2);
220 flex-shrink: 0;
221 }
222
223 .isd-wrap {
224 max-width: 1200px;
225 margin: 0 auto;
226 padding: var(--space-5) var(--space-6) var(--space-10);
227 }
228
229 // Bounded-height, independently-scrolling columns — not position: sticky.
230 // See _layout.scss's .layout-two-col/.layout-sidebar comment for why.
231 .isd-layout {
232 display: grid;
233 grid-template-columns: 1fr 280px;
234 gap: var(--space-6);
235 align-items: start;
236 min-height: 0;
237 height: calc(100dvh - var(--sticky-offset, var(--header-height)) - var(--space-4));
238
239 @media (max-width: 900px) {
240 grid-template-columns: 1fr;
241 height: auto;
242 }
243 }
244
245 .isd-main {
246 min-width: 0;
247 min-height: 0;
248 overflow-y: auto;
249 scrollbar-width: thin;
250 scrollbar-color: var(--border-default) transparent;
251
252 @media (max-width: 900px) { overflow-y: visible; }
253 }
254
255 .isd-sidebar {
256 display: flex;
257 flex-direction: column;
258 gap: 0;
259 min-height: 0;
260 overflow-y: auto;
261 scrollbar-width: thin;
262 scrollbar-color: var(--border-default) transparent;
263
264 @media (max-width: 900px) { overflow-y: visible; }
265 }
266
267 .isd-panel-hd {
268 display: flex;
269 align-items: center;
270 gap: var(--space-2);
271 padding: var(--space-3) var(--space-4);
272 }
273
274 .isd-anchor-addr {
275 display: flex;
276 align-items: center;
277 gap: 0;
278 flex: 1;
279 min-width: 0;
280 }
281
282 .isd-anchor-stats {
283 display: flex;
284 align-items: center;
285 gap: var(--space-2);
286 flex-shrink: 0;
287 }
288
289 .isd-body-hd {
290 display: flex;
291 align-items: center;
292 gap: var(--space-2);
293 padding: var(--space-3) var(--space-4);
294 }
295
296 .isd-event-replies {
297 display: flex;
298 flex-direction: column;
299 gap: 0;
300 }
301
302 .isd-event-empty {
303 display: flex;
304 align-items: center;
305 justify-content: center;
306 padding: var(--space-6) var(--space-4);
307 }
308
309 .isd-release-bd {
310 display: flex;
311 flex-direction: column;
312 gap: 4px;
313 padding: var(--space-2) var(--space-3);
314 }
315
316 .isd-rel-commit-top {
317 display: flex;
318 align-items: center;
319 gap: 6px;
320 }
321
322 .isd-rel-landed-in {
323 display: flex;
324 align-items: center;
325 gap: 5px;
326 flex-wrap: wrap;
327 }
328
329 .isd-ic-section {
330 display: flex;
331 flex-direction: column;
332 gap: 7px;
333 padding: 9px 12px;
334 }
335
336 .isd-ic-section-label {
337 display: flex;
338 align-items: center;
339 justify-content: space-between;
340 }
341
342 .isd-ic-blast-hero {
343 display: flex;
344 flex-direction: column;
345 gap: 6px;
346 }
347
348 .isd-ic-blast-nums {
349 display: flex;
350 align-items: baseline;
351 gap: 5px;
352 }
353
354 .isd-ic-grav-wrap {
355 display: flex;
356 align-items: center;
357 gap: 7px;
358 }
359
360 .isd-ic-grav-track {
361 flex: 1;
362 height: 10px;
363 overflow: hidden;
364 }
365
366 .isd-ic-co-syms {
367 display: flex;
368 align-items: center;
369 flex-wrap: wrap;
370 gap: 4px;
371 }
372
373 .isd-ic-churn-line {
374 display: flex;
375 align-items: baseline;
376 flex-wrap: wrap;
377 gap: 4px;
378 }
379
380 .isd-ic-sparkline {
381 display: flex;
382 align-items: flex-end;
383 gap: 2px;
384 height: 36px;
385 }
386
387 .isd-ic-issue-list {
388 display: flex;
389 flex-wrap: wrap;
390 gap: 4px;
391 }
392
393 // ── New issue page (.isn-*) ────────────────────────────────────────────────────
394
395 .isn-page {
396 max-width: 960px;
397 margin: 0 auto;
398 padding: var(--space-4) var(--space-3);
399 }
400
401 .isn-layout {
402 display: grid;
403 grid-template-columns: 1fr 240px;
404 gap: var(--space-4);
405 align-items: start;
406
407 @media (max-width: 720px) { grid-template-columns: 1fr; }
408 }
409
410 .isn-main { min-width: 0; }
411
412 .isn-card-header {
413 display: flex;
414 align-items: center;
415 justify-content: space-between;
416 padding: var(--space-3) var(--space-4);
417 }
418
419 .isn-card-body {
420 padding: var(--space-4);
421 display: flex;
422 flex-direction: column;
423 gap: var(--space-5);
424 }
425
426 .isn-section {
427 display: flex;
428 flex-direction: column;
429 gap: var(--space-3);
430 }
431
432 .isn-section-header {
433 display: flex;
434 align-items: center;
435 gap: var(--space-2);
436 }
437
438 .isn-cli-block {
439 display: flex;
440 flex-direction: column;
441 gap: var(--space-3);
442 }
443
444 .isn-cli-step {
445 display: flex;
446 gap: var(--space-3);
447 align-items: flex-start;
448 }
449
450 .isn-cli-step-body {
451 display: flex;
452 flex-direction: column;
453 gap: 6px;
454 flex: 1;
455 min-width: 0;
456 }
457
458 .isn-anatomy {
459 display: flex;
460 flex-direction: column;
461 }
462
463 .isn-anatomy-row {
464 display: flex;
465 gap: var(--space-3);
466 padding: var(--space-2) var(--space-3);
467 }
468
469 .isn-sidebar {
470 display: flex;
471 flex-direction: column;
472 gap: var(--space-3);
473 }
474
475 .isn-sb-section {
476 display: flex;
477 flex-direction: column;
478 gap: var(--space-2);
479 }
480
481 .isn-sb-links {
482 display: flex;
483 flex-direction: column;
484 gap: 4px;
485 }
File History 14 commits
sha256:34035d72cef530c1ab9d6a6f53be18d803dde705fc3157617d70352a96d0747b Merge branch 'fix/wire-push-external-parent-manifest' into dev Human 8 days ago
sha256:fc04e4cae9e1774d6a21b65c45daeed0e6787eb581d13aa1b03bfe9384a34226 Merge branch 'fix/two-column-scroll-layout' into dev Human 8 days ago
sha256:408916fc5973ba59c6e4eebaa80ebdcc801c0a63205651e25009d11548f79454 chore: bump version to 0.2.0.dev2 — nightly.2, matching muse Sonnet 4.6 patch 11 days ago
sha256:d035733f21ccff27735fddebfbbe0ed24565a32a22db8de5885402262671ecd2 chore: bump version to 0.2.0rc15 for musehub#113 fix release Sonnet 4.6 patch 14 days ago
sha256:0032d6cfa33bc3c8367436ad768e7dd0e339b4332153160247da8266cb5fa352 Merge branch 'task/version-tags-phase3-server' into dev Human 17 days ago
sha256:4669620efda9ff41c55bdefd1f7bfe1c239d468428744c84ead9957e5a003a53 merge: rescue snapshot-recovery hardening (c00aa21d) into d… Opus 4.8 minor 29 days ago
sha256:a59da49c4611b970fc4b6ae48678ce4943261c213a07ddbd73ce9201df869b4a fix: remove false-positive proposal_comments index drop fro… Sonnet 4.6 patch 33 days ago
sha256:0a240d6dbff234f07d98a28a4a9a68db702f3f9ff9260196f24219bdb1c0b6f3 feat: render markdown mists as HTML with heading anchor links Sonnet 4.6 patch 34 days ago
sha256:24a7d47486ebc4ebd1832830580e177ec6f877b48dced8c000e198cdec4ce9d6 Merge 'task/bump-version-rc12' into 'dev' — proposal: Bump … Human 35 days ago
sha256:b9ff931d147e0114a1f17060f415b89ed551c170a91ff226c70437aa5c85f9ee Merge 'task/bump-version-rc12' into 'dev' — proposal: Bump … Human 35 days ago
sha256:d1122d21e73471879b460037b22c0b50fded7c423444a176f248428f75dac39c Merge 'task/fix-issue-pagination-cursor' into 'dev' — propo… Human 35 days ago
sha256:01e18975e73d2b3cd5b6db7929c895bef9aa6e0d4391dc5b2adfc548b41318dd Merge 'feat/adding-debug-logs-to-staging' into 'dev' — prop… Human 36 days ago
sha256:6b1949fc2797ca4c1936a637a4cbfec828ef56cf52398a2e74ca3c4f494e728f fix: use wire_bytes not mpack_bytes_raw in compute_object_b… Sonnet 4.6 patch 48 days ago
sha256:b99f2455dc346966d040133f5203297e6e3ef5803a93728a2c30568d0a0f7583 rename: delta_add → delta_upsert across wire format, models… Sonnet 4.6 patch 50 days ago