@refrakt-md/lumina 0.8.5 → 0.9.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/base.css +10 -0
- package/contracts/structures.json +92 -47
- package/index.css +20 -0
- package/package.json +6 -6
- package/styles/dimensions/checklist.css +81 -0
- package/styles/dimensions/density.css +51 -0
- package/styles/dimensions/media.css +62 -0
- package/styles/dimensions/metadata.css +161 -0
- package/styles/dimensions/sections.css +77 -0
- package/styles/dimensions/sequence.css +129 -0
- package/styles/dimensions/state.css +57 -0
- package/styles/dimensions/surfaces.css +88 -0
- package/styles/global.css +1 -1
- package/styles/layouts/docs.css +28 -2
- package/styles/layouts/split.css +159 -3
- package/styles/runes/accordion.css +1 -2
- package/styles/runes/annotate.css +0 -3
- package/styles/runes/api.css +0 -4
- package/styles/runes/audio.css +0 -3
- package/styles/runes/backlog.css +61 -0
- package/styles/runes/bento.css +4 -5
- package/styles/runes/blog.css +3 -7
- package/styles/runes/budget.css +3 -19
- package/styles/runes/bug.css +25 -0
- package/styles/runes/cast.css +0 -3
- package/styles/runes/character.css +5 -43
- package/styles/runes/chart.css +0 -2
- package/styles/runes/codegroup.css +2 -2
- package/styles/runes/compare.css +0 -1
- package/styles/runes/conversation.css +0 -1
- package/styles/runes/cta.css +6 -3
- package/styles/runes/datatable.css +0 -3
- package/styles/runes/decision-log.css +46 -0
- package/styles/runes/decision.css +21 -0
- package/styles/runes/design-context.css +0 -1
- package/styles/runes/details.css +0 -1
- package/styles/runes/diagram.css +0 -1
- package/styles/runes/diff.css +0 -1
- package/styles/runes/embed.css +0 -1
- package/styles/runes/event.css +0 -3
- package/styles/runes/faction.css +79 -48
- package/styles/runes/feature.css +10 -10
- package/styles/runes/figure.css +0 -3
- package/styles/runes/form.css +0 -1
- package/styles/runes/gallery.css +0 -1
- package/styles/runes/grid.css +0 -3
- package/styles/runes/hero.css +13 -4
- package/styles/runes/hint.css +0 -7
- package/styles/runes/howto.css +7 -18
- package/styles/runes/itinerary.css +0 -2
- package/styles/runes/juxtapose.css +0 -4
- package/styles/runes/lore.css +0 -20
- package/styles/runes/mediatext.css +0 -3
- package/styles/runes/milestone.css +106 -0
- package/styles/runes/mockup.css +0 -1
- package/styles/runes/organization.css +0 -3
- package/styles/runes/palette.css +0 -3
- package/styles/runes/plan-activity.css +87 -0
- package/styles/runes/plan-progress.css +69 -0
- package/styles/runes/playlist.css +101 -83
- package/styles/runes/plot.css +0 -23
- package/styles/runes/preview.css +9 -17
- package/styles/runes/pricing.css +4 -1
- package/styles/runes/realm.css +80 -46
- package/styles/runes/recipe.css +7 -89
- package/styles/runes/reveal.css +1 -4
- package/styles/runes/sandbox.css +0 -1
- package/styles/runes/spacing.css +0 -3
- package/styles/runes/spec.css +20 -0
- package/styles/runes/steps.css +4 -2
- package/styles/runes/storyboard.css +0 -3
- package/styles/runes/symbol.css +0 -39
- package/styles/runes/tabs.css +1 -4
- package/styles/runes/testimonial.css +0 -2
- package/styles/runes/textblock.css +0 -3
- package/styles/runes/toc.css +0 -1
- package/styles/runes/track.css +16 -5
- package/styles/runes/typography.css +0 -3
- package/styles/runes/work.css +35 -0
- package/styles/runes/xref.css +12 -0
|
@@ -0,0 +1,69 @@
|
|
|
1
|
+
/* Plan Progress */
|
|
2
|
+
.rf-plan-progress {
|
|
3
|
+
background: var(--rf-color-surface);
|
|
4
|
+
border: 1px solid var(--rf-color-border);
|
|
5
|
+
border-radius: var(--rf-radius-md);
|
|
6
|
+
padding: 0.75rem 1.25rem;
|
|
7
|
+
}
|
|
8
|
+
.rf-plan-progress__row {
|
|
9
|
+
display: flex;
|
|
10
|
+
align-items: baseline;
|
|
11
|
+
gap: 0.5rem;
|
|
12
|
+
padding-block: 0.25rem;
|
|
13
|
+
}
|
|
14
|
+
.rf-plan-progress__row + .rf-plan-progress__row {
|
|
15
|
+
border-block-start: 1px solid var(--rf-color-border);
|
|
16
|
+
}
|
|
17
|
+
.rf-plan-progress__label {
|
|
18
|
+
font-weight: 600;
|
|
19
|
+
font-size: 0.8125rem;
|
|
20
|
+
color: var(--rf-color-text);
|
|
21
|
+
min-width: 8rem;
|
|
22
|
+
}
|
|
23
|
+
.rf-plan-progress__counts {
|
|
24
|
+
display: flex;
|
|
25
|
+
flex-wrap: wrap;
|
|
26
|
+
gap: 0.25rem 0.5rem;
|
|
27
|
+
}
|
|
28
|
+
.rf-plan-progress__count {
|
|
29
|
+
font-size: 0.75rem;
|
|
30
|
+
padding: 0.125rem 0.5rem;
|
|
31
|
+
border-radius: var(--rf-radius-sm);
|
|
32
|
+
white-space: nowrap;
|
|
33
|
+
}
|
|
34
|
+
|
|
35
|
+
/* Status-colored counts */
|
|
36
|
+
.rf-plan-progress__count[data-status="done"],
|
|
37
|
+
.rf-plan-progress__count[data-status="fixed"],
|
|
38
|
+
.rf-plan-progress__count[data-status="accepted"],
|
|
39
|
+
.rf-plan-progress__count[data-status="active"],
|
|
40
|
+
.rf-plan-progress__count[data-status="complete"] {
|
|
41
|
+
color: var(--rf-color-success);
|
|
42
|
+
background: var(--rf-color-success-bg);
|
|
43
|
+
}
|
|
44
|
+
.rf-plan-progress__count[data-status="in-progress"],
|
|
45
|
+
.rf-plan-progress__count[data-status="confirmed"],
|
|
46
|
+
.rf-plan-progress__count[data-status="review"] {
|
|
47
|
+
color: var(--rf-color-warning);
|
|
48
|
+
background: var(--rf-color-warning-bg);
|
|
49
|
+
}
|
|
50
|
+
.rf-plan-progress__count[data-status="ready"],
|
|
51
|
+
.rf-plan-progress__count[data-status="reported"],
|
|
52
|
+
.rf-plan-progress__count[data-status="proposed"],
|
|
53
|
+
.rf-plan-progress__count[data-status="planning"] {
|
|
54
|
+
color: var(--rf-color-info);
|
|
55
|
+
background: var(--rf-color-info-bg);
|
|
56
|
+
}
|
|
57
|
+
.rf-plan-progress__count[data-status="blocked"] {
|
|
58
|
+
color: var(--rf-color-danger);
|
|
59
|
+
background: var(--rf-color-danger-bg);
|
|
60
|
+
}
|
|
61
|
+
.rf-plan-progress__count[data-status="draft"],
|
|
62
|
+
.rf-plan-progress__count[data-status="pending"],
|
|
63
|
+
.rf-plan-progress__count[data-status="superseded"],
|
|
64
|
+
.rf-plan-progress__count[data-status="deprecated"],
|
|
65
|
+
.rf-plan-progress__count[data-status="wontfix"],
|
|
66
|
+
.rf-plan-progress__count[data-status="duplicate"] {
|
|
67
|
+
color: var(--rf-color-muted);
|
|
68
|
+
background: var(--rf-color-surface-active);
|
|
69
|
+
}
|
|
@@ -1,52 +1,112 @@
|
|
|
1
1
|
/* Playlist */
|
|
2
|
-
.rf-playlist {
|
|
3
|
-
margin: 1.5rem 0;
|
|
4
|
-
}
|
|
5
2
|
|
|
6
|
-
/*
|
|
7
|
-
.rf-playlist__header {
|
|
8
|
-
display: flex;
|
|
3
|
+
/* Inner header (headline + description) inside content */
|
|
4
|
+
.rf-playlist__content > .rf-playlist__header {
|
|
9
5
|
flex-direction: column;
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
.rf-
|
|
15
|
-
.rf-playlist__header h3,
|
|
16
|
-
.rf-playlist__header h4,
|
|
17
|
-
.rf-playlist__header h5,
|
|
18
|
-
.rf-playlist__header h6 {
|
|
6
|
+
align-items: flex-start;
|
|
7
|
+
gap: 0.25rem;
|
|
8
|
+
margin-bottom: 1rem;
|
|
9
|
+
}
|
|
10
|
+
.rf-playlist__headline {
|
|
19
11
|
margin: 0;
|
|
20
|
-
font-size: 1.25rem;
|
|
21
|
-
font-weight: 700;
|
|
22
|
-
color: var(--rf-color-text);
|
|
23
12
|
}
|
|
24
|
-
.rf-playlist__header p {
|
|
13
|
+
.rf-playlist__content > .rf-playlist__header p {
|
|
25
14
|
margin: 0;
|
|
26
|
-
font-size: 0.
|
|
15
|
+
font-size: 0.925rem;
|
|
27
16
|
color: var(--rf-color-muted);
|
|
28
17
|
line-height: 1.5;
|
|
29
18
|
}
|
|
30
19
|
|
|
31
|
-
/* Type badge */
|
|
32
|
-
.rf-playlist__type-badge {
|
|
33
|
-
display: inline-block;
|
|
34
|
-
font-size: 0.7rem;
|
|
35
|
-
font-weight: 600;
|
|
36
|
-
text-transform: uppercase;
|
|
37
|
-
letter-spacing: 0.05em;
|
|
38
|
-
padding: 0.125rem 0.5rem;
|
|
39
|
-
border-radius: var(--rf-radius-full);
|
|
40
|
-
color: var(--rf-color-primary);
|
|
41
|
-
background: color-mix(in srgb, var(--rf-color-primary) 10%, transparent);
|
|
42
|
-
width: fit-content;
|
|
43
|
-
}
|
|
44
|
-
|
|
45
20
|
/* Tracks list wrapper */
|
|
46
21
|
.rf-playlist__tracks {
|
|
47
22
|
list-style: none;
|
|
48
23
|
padding: 0;
|
|
49
|
-
margin: 0
|
|
24
|
+
margin: 0;
|
|
25
|
+
counter-reset: track;
|
|
26
|
+
border: 1px solid var(--rf-color-border);
|
|
27
|
+
border-radius: var(--rf-radius-md);
|
|
28
|
+
overflow: hidden;
|
|
29
|
+
}
|
|
30
|
+
|
|
31
|
+
/* Track items — override sequence dimension's absolute positioning */
|
|
32
|
+
.rf-playlist__tracks > li {
|
|
33
|
+
display: flex;
|
|
34
|
+
align-items: baseline;
|
|
35
|
+
gap: 0.75rem;
|
|
36
|
+
padding: 0.75rem 1.25rem;
|
|
37
|
+
padding-left: 1.25rem;
|
|
38
|
+
position: static;
|
|
39
|
+
transition: background 0.15s ease;
|
|
40
|
+
}
|
|
41
|
+
/* Hide meta elements from flex layout */
|
|
42
|
+
.rf-playlist__tracks > li > meta {
|
|
43
|
+
display: none;
|
|
44
|
+
}
|
|
45
|
+
.rf-playlist__tracks > li + li {
|
|
46
|
+
border-top: 1px solid var(--rf-color-border);
|
|
47
|
+
}
|
|
48
|
+
.rf-playlist__tracks > li:hover {
|
|
49
|
+
background: color-mix(in srgb, var(--rf-color-border) 15%, transparent);
|
|
50
|
+
}
|
|
51
|
+
.rf-playlist__tracks > li::before {
|
|
52
|
+
position: static;
|
|
53
|
+
width: auto;
|
|
54
|
+
height: auto;
|
|
55
|
+
min-width: 1.5rem;
|
|
56
|
+
font-size: 0.8rem;
|
|
57
|
+
font-variant-numeric: tabular-nums;
|
|
58
|
+
color: var(--rf-color-muted);
|
|
59
|
+
background: none;
|
|
60
|
+
border-radius: 0;
|
|
61
|
+
text-align: right;
|
|
62
|
+
flex-shrink: 0;
|
|
63
|
+
}
|
|
64
|
+
|
|
65
|
+
/* Track name */
|
|
66
|
+
.rf-playlist__tracks [data-name="track-name"] {
|
|
67
|
+
flex: 1;
|
|
68
|
+
font-size: 0.9375rem;
|
|
69
|
+
font-weight: 500;
|
|
70
|
+
color: var(--rf-color-text);
|
|
71
|
+
min-width: 0;
|
|
72
|
+
overflow: hidden;
|
|
73
|
+
text-overflow: ellipsis;
|
|
74
|
+
white-space: nowrap;
|
|
75
|
+
}
|
|
76
|
+
|
|
77
|
+
/* Track artist */
|
|
78
|
+
.rf-playlist__tracks [data-name="track-artist"] {
|
|
79
|
+
font-size: 0.8125rem;
|
|
80
|
+
color: var(--rf-color-muted);
|
|
81
|
+
flex-shrink: 0;
|
|
82
|
+
}
|
|
83
|
+
.rf-playlist__tracks [data-name="track-artist"]::before {
|
|
84
|
+
content: '\00b7';
|
|
85
|
+
margin-right: 0.5rem;
|
|
86
|
+
opacity: 0.5;
|
|
87
|
+
}
|
|
88
|
+
|
|
89
|
+
/* Track duration — pushed right */
|
|
90
|
+
.rf-playlist__tracks [data-name="track-duration"] {
|
|
91
|
+
font-size: 0.8125rem;
|
|
92
|
+
color: var(--rf-color-muted);
|
|
93
|
+
font-variant-numeric: tabular-nums;
|
|
94
|
+
flex-shrink: 0;
|
|
95
|
+
margin-left: auto;
|
|
96
|
+
min-width: 3rem;
|
|
97
|
+
text-align: right;
|
|
98
|
+
}
|
|
99
|
+
|
|
100
|
+
/* Track meta (date etc.) */
|
|
101
|
+
.rf-playlist__tracks [data-name="track-meta"] {
|
|
102
|
+
font-size: 0.75rem;
|
|
103
|
+
color: var(--rf-color-muted);
|
|
104
|
+
flex-shrink: 0;
|
|
105
|
+
}
|
|
106
|
+
.rf-playlist__tracks [data-name="track-meta"]::before {
|
|
107
|
+
content: '\00b7';
|
|
108
|
+
margin-right: 0.5rem;
|
|
109
|
+
opacity: 0.5;
|
|
50
110
|
}
|
|
51
111
|
|
|
52
112
|
/* Player area */
|
|
@@ -55,58 +115,16 @@
|
|
|
55
115
|
margin-top: 0.5rem;
|
|
56
116
|
}
|
|
57
117
|
|
|
58
|
-
/* Media zone — cover art */
|
|
59
|
-
.rf-playlist__media {
|
|
60
|
-
border-radius: var(--rf-radius-lg);
|
|
61
|
-
overflow: hidden;
|
|
62
|
-
}
|
|
118
|
+
/* Media zone — domain-specific cover art overrides (base styles in split.css) */
|
|
63
119
|
.rf-playlist__media img {
|
|
64
|
-
display: block;
|
|
65
|
-
width: 100%;
|
|
66
|
-
height: auto;
|
|
67
|
-
border-radius: var(--rf-radius-lg);
|
|
68
120
|
aspect-ratio: 1;
|
|
69
121
|
object-fit: cover;
|
|
70
122
|
}
|
|
71
123
|
|
|
72
|
-
/*
|
|
73
|
-
|
|
74
|
-
.rf-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
gap: var(--split-gap, 2rem);
|
|
78
|
-
align-items: var(--split-valign, start);
|
|
79
|
-
}
|
|
80
|
-
/* Split: content left (col 1), media right (col 2) — DOM order is media first */
|
|
81
|
-
.rf-playlist[data-layout="split"] > .rf-playlist__content {
|
|
82
|
-
grid-column: 1;
|
|
83
|
-
grid-row: 2;
|
|
84
|
-
}
|
|
85
|
-
.rf-playlist[data-layout="split"] > .rf-playlist__media {
|
|
86
|
-
grid-column: 2;
|
|
87
|
-
grid-row: 2;
|
|
88
|
-
}
|
|
89
|
-
/* Split-reverse: media left (col 1), content right (col 2) — matches DOM order */
|
|
90
|
-
/* Type badge spans full width in split layouts */
|
|
91
|
-
.rf-playlist[data-layout="split"] > .rf-playlist__type-badge,
|
|
92
|
-
.rf-playlist[data-layout="split-reverse"] > .rf-playlist__type-badge {
|
|
93
|
-
grid-column: 1 / -1;
|
|
94
|
-
}
|
|
95
|
-
/* Collapse to single column on small screens */
|
|
96
|
-
@media (max-width: 640px) {
|
|
97
|
-
.rf-playlist[data-layout="split"],
|
|
98
|
-
.rf-playlist[data-layout="split-reverse"] {
|
|
99
|
-
grid-template-columns: 1fr;
|
|
100
|
-
}
|
|
101
|
-
.rf-playlist[data-layout="split"] > .rf-playlist__content,
|
|
102
|
-
.rf-playlist[data-layout="split"] > .rf-playlist__media {
|
|
103
|
-
grid-column: auto;
|
|
104
|
-
grid-row: auto;
|
|
124
|
+
/* Hide secondary columns on narrow screens */
|
|
125
|
+
@media (max-width: 480px) {
|
|
126
|
+
.rf-playlist__tracks [data-name="track-artist"],
|
|
127
|
+
.rf-playlist__tracks [data-name="track-meta"] {
|
|
128
|
+
display: none;
|
|
105
129
|
}
|
|
106
130
|
}
|
|
107
|
-
|
|
108
|
-
/* Split layout media gets subtle depth */
|
|
109
|
-
.rf-playlist[data-layout="split"] .rf-playlist__media img,
|
|
110
|
-
.rf-playlist[data-layout="split-reverse"] .rf-playlist__media img {
|
|
111
|
-
box-shadow: 0 2px 8px rgba(0, 0, 0, 0.08);
|
|
112
|
-
}
|
package/styles/runes/plot.css
CHANGED
|
@@ -1,6 +1,5 @@
|
|
|
1
1
|
/* Plot */
|
|
2
2
|
.rf-plot {
|
|
3
|
-
margin: 1.5rem 0;
|
|
4
3
|
display: flex;
|
|
5
4
|
flex-direction: column;
|
|
6
5
|
}
|
|
@@ -10,30 +9,8 @@
|
|
|
10
9
|
font-weight: 700;
|
|
11
10
|
margin-bottom: 0.5rem;
|
|
12
11
|
color: var(--rf-color-heading);
|
|
13
|
-
order: -1;
|
|
14
12
|
}
|
|
15
13
|
|
|
16
|
-
/* Meta bar — surface strip */
|
|
17
|
-
.rf-plot__badge {
|
|
18
|
-
display: flex;
|
|
19
|
-
flex-wrap: wrap;
|
|
20
|
-
gap: 0.75rem 1.25rem;
|
|
21
|
-
align-items: center;
|
|
22
|
-
background: var(--rf-color-surface);
|
|
23
|
-
border-radius: var(--rf-radius-md);
|
|
24
|
-
padding: 0.625rem 1rem;
|
|
25
|
-
margin-bottom: 1rem;
|
|
26
|
-
}
|
|
27
|
-
.rf-plot__type-badge,
|
|
28
|
-
.rf-plot__structure-badge {
|
|
29
|
-
font-size: 0.8125rem;
|
|
30
|
-
font-weight: 500;
|
|
31
|
-
text-transform: capitalize;
|
|
32
|
-
color: var(--rf-color-muted);
|
|
33
|
-
}
|
|
34
|
-
.rf-plot__type-badge::before { content: 'Type: '; font-weight: 400; opacity: 0.65; }
|
|
35
|
-
.rf-plot__structure-badge::before { content: 'Structure: '; font-weight: 400; opacity: 0.65; }
|
|
36
|
-
|
|
37
14
|
/* Description */
|
|
38
15
|
.rf-plot > p {
|
|
39
16
|
color: var(--rf-color-muted);
|
package/styles/runes/preview.css
CHANGED
|
@@ -3,19 +3,6 @@
|
|
|
3
3
|
margin: 2rem 0;
|
|
4
4
|
}
|
|
5
5
|
|
|
6
|
-
/* Width variants */
|
|
7
|
-
@container (min-width: 1008px) {
|
|
8
|
-
.rf-preview[data-width="wide"] {
|
|
9
|
-
width: calc(100% + 8rem);
|
|
10
|
-
margin-left: -4rem;
|
|
11
|
-
max-width: 76rem;
|
|
12
|
-
}
|
|
13
|
-
}
|
|
14
|
-
.rf-preview[data-width="full"] {
|
|
15
|
-
width: 100vw;
|
|
16
|
-
margin-left: calc(-50vw + 50%);
|
|
17
|
-
}
|
|
18
|
-
|
|
19
6
|
/* Toolbar — transparent, controls float above the canvas */
|
|
20
7
|
.rf-preview__toolbar {
|
|
21
8
|
display: flex;
|
|
@@ -79,7 +66,7 @@
|
|
|
79
66
|
box-shadow: var(--rf-shadow-xs);
|
|
80
67
|
}
|
|
81
68
|
|
|
82
|
-
/* Canvas —
|
|
69
|
+
/* Canvas — framed area for the preview content */
|
|
83
70
|
.rf-preview__canvas {
|
|
84
71
|
padding: 2rem 2.5rem;
|
|
85
72
|
background: var(--rf-color-bg);
|
|
@@ -170,7 +157,7 @@
|
|
|
170
157
|
}
|
|
171
158
|
|
|
172
159
|
/* Small containers: edge-to-edge bleed */
|
|
173
|
-
@container (max-width:
|
|
160
|
+
@container (max-width: 1280px) {
|
|
174
161
|
.rf-preview__toolbar {
|
|
175
162
|
padding: 0.25rem var(--rf-content-padding, 1.5rem) 0.5rem;
|
|
176
163
|
}
|
|
@@ -182,7 +169,12 @@
|
|
|
182
169
|
}
|
|
183
170
|
.rf-preview__source {
|
|
184
171
|
border-radius: 0;
|
|
185
|
-
|
|
186
|
-
|
|
172
|
+
}
|
|
173
|
+
/* Break out of feature's padding-inline to reach viewport edges */
|
|
174
|
+
.rf-preview--in-feature {
|
|
175
|
+
margin-inline: calc(-1 * var(--rf-content-gutter, 1.5rem));
|
|
176
|
+
}
|
|
177
|
+
.rf-preview--in-feature .rf-preview__toolbar {
|
|
178
|
+
padding-inline: var(--rf-content-gutter, 1.5rem);
|
|
187
179
|
}
|
|
188
180
|
}
|
package/styles/runes/pricing.css
CHANGED
package/styles/runes/realm.css
CHANGED
|
@@ -1,41 +1,12 @@
|
|
|
1
1
|
/* Realm */
|
|
2
2
|
.rf-realm {
|
|
3
|
-
margin: 1.5rem 0;
|
|
4
3
|
display: flex;
|
|
5
4
|
flex-direction: column;
|
|
6
5
|
}
|
|
7
6
|
|
|
8
|
-
/*
|
|
9
|
-
.rf-realm__badge {
|
|
10
|
-
display: flex;
|
|
11
|
-
flex-wrap: wrap;
|
|
12
|
-
gap: 0.75rem 1.25rem;
|
|
13
|
-
align-items: center;
|
|
14
|
-
background: var(--rf-color-surface);
|
|
15
|
-
border-radius: var(--rf-radius-md);
|
|
16
|
-
padding: 0.625rem 1rem;
|
|
17
|
-
margin-bottom: 1rem;
|
|
18
|
-
}
|
|
19
|
-
.rf-realm__type-badge,
|
|
20
|
-
.rf-realm__scale-badge {
|
|
21
|
-
font-size: 0.8125rem;
|
|
22
|
-
font-weight: 500;
|
|
23
|
-
text-transform: capitalize;
|
|
24
|
-
color: var(--rf-color-muted);
|
|
25
|
-
}
|
|
26
|
-
.rf-realm__type-badge::before { content: 'Type: '; font-weight: 400; opacity: 0.65; }
|
|
27
|
-
.rf-realm__scale-badge::before { content: 'Scale: '; font-weight: 400; opacity: 0.65; }
|
|
28
|
-
|
|
29
|
-
/* Scene image */
|
|
7
|
+
/* Scene image — base styles deferred to shared [data-section="media"] in split.css */
|
|
30
8
|
.rf-realm__scene {
|
|
31
|
-
|
|
32
|
-
overflow: hidden;
|
|
33
|
-
}
|
|
34
|
-
.rf-realm__scene img {
|
|
35
|
-
display: block;
|
|
36
|
-
width: 100%;
|
|
37
|
-
height: auto;
|
|
38
|
-
border-radius: var(--rf-radius-lg);
|
|
9
|
+
margin-bottom: var(--rf-spacing-md);
|
|
39
10
|
}
|
|
40
11
|
|
|
41
12
|
/* Content */
|
|
@@ -54,7 +25,6 @@
|
|
|
54
25
|
font-weight: 700;
|
|
55
26
|
margin-bottom: 0.5rem;
|
|
56
27
|
color: var(--rf-color-heading);
|
|
57
|
-
order: -1;
|
|
58
28
|
}
|
|
59
29
|
|
|
60
30
|
/* Realm Section */
|
|
@@ -62,9 +32,11 @@
|
|
|
62
32
|
padding: 0.75rem 0;
|
|
63
33
|
border-top: 1px solid var(--rf-color-border);
|
|
64
34
|
}
|
|
65
|
-
.rf-realm-
|
|
66
|
-
|
|
67
|
-
font-
|
|
35
|
+
.rf-realm-section__name {
|
|
36
|
+
display: block;
|
|
37
|
+
font-size: 1.25rem;
|
|
38
|
+
font-weight: 700;
|
|
39
|
+
line-height: 1.3;
|
|
68
40
|
margin-bottom: 0.5rem;
|
|
69
41
|
color: var(--rf-color-heading);
|
|
70
42
|
}
|
|
@@ -78,41 +50,103 @@
|
|
|
78
50
|
.rf-realm[data-layout="split-reverse"] {
|
|
79
51
|
display: grid;
|
|
80
52
|
grid-template-columns: var(--split-ratio, 1fr 1fr);
|
|
81
|
-
gap: var(--split-gap, 2rem);
|
|
53
|
+
column-gap: var(--split-gap, 2rem);
|
|
82
54
|
align-items: var(--split-valign, start);
|
|
83
55
|
}
|
|
84
|
-
/*
|
|
85
|
-
.rf-realm[data-layout="split"] >
|
|
86
|
-
|
|
87
|
-
grid-column: 1 / -1;
|
|
56
|
+
/* Split: badge + name + content left (col 1), scene right (col 2) */
|
|
57
|
+
.rf-realm[data-layout="split"] > .rf-realm__badge {
|
|
58
|
+
grid-column: 1;
|
|
88
59
|
grid-row: 1;
|
|
89
60
|
}
|
|
90
|
-
.rf-realm[data-layout="split"] >
|
|
91
|
-
|
|
92
|
-
grid-column: 1 / -1;
|
|
61
|
+
.rf-realm[data-layout="split"] > span[property="name"] {
|
|
62
|
+
grid-column: 1;
|
|
93
63
|
grid-row: 2;
|
|
94
64
|
}
|
|
95
|
-
/* Split: content left (col 1), scene right (col 2) */
|
|
96
65
|
.rf-realm[data-layout="split"] > .rf-realm__content {
|
|
97
66
|
grid-column: 1;
|
|
98
67
|
grid-row: 3;
|
|
99
68
|
}
|
|
100
69
|
.rf-realm[data-layout="split"] > .rf-realm__scene {
|
|
70
|
+
grid-column: 2;
|
|
71
|
+
grid-row: 1 / 4;
|
|
72
|
+
}
|
|
73
|
+
/* Split-reverse: scene left (col 1), badge + name + content right (col 2) */
|
|
74
|
+
.rf-realm[data-layout="split-reverse"] > .rf-realm__badge {
|
|
75
|
+
grid-column: 2;
|
|
76
|
+
grid-row: 1;
|
|
77
|
+
}
|
|
78
|
+
.rf-realm[data-layout="split-reverse"] > span[property="name"] {
|
|
79
|
+
grid-column: 2;
|
|
80
|
+
grid-row: 2;
|
|
81
|
+
}
|
|
82
|
+
.rf-realm[data-layout="split-reverse"] > .rf-realm__content {
|
|
101
83
|
grid-column: 2;
|
|
102
84
|
grid-row: 3;
|
|
103
85
|
}
|
|
104
|
-
|
|
86
|
+
.rf-realm[data-layout="split-reverse"] > .rf-realm__scene {
|
|
87
|
+
grid-column: 1;
|
|
88
|
+
grid-row: 1 / 4;
|
|
89
|
+
margin: 0;
|
|
90
|
+
}
|
|
105
91
|
/* Collapse to single column on small screens */
|
|
106
92
|
@media (max-width: 640px) {
|
|
107
93
|
.rf-realm[data-layout="split"],
|
|
108
94
|
.rf-realm[data-layout="split-reverse"] {
|
|
109
95
|
grid-template-columns: 1fr;
|
|
110
96
|
}
|
|
97
|
+
.rf-realm[data-layout="split"] > .rf-realm__badge,
|
|
98
|
+
.rf-realm[data-layout="split"] > span[property="name"],
|
|
111
99
|
.rf-realm[data-layout="split"] > .rf-realm__content,
|
|
112
|
-
.rf-realm[data-layout="split"] > .rf-realm__scene
|
|
100
|
+
.rf-realm[data-layout="split"] > .rf-realm__scene,
|
|
101
|
+
.rf-realm[data-layout="split-reverse"] > .rf-realm__badge,
|
|
102
|
+
.rf-realm[data-layout="split-reverse"] > span[property="name"],
|
|
103
|
+
.rf-realm[data-layout="split-reverse"] > .rf-realm__content,
|
|
104
|
+
.rf-realm[data-layout="split-reverse"] > .rf-realm__scene {
|
|
105
|
+
grid-column: auto;
|
|
106
|
+
grid-row: auto;
|
|
107
|
+
}
|
|
108
|
+
/* Only add margin when NOT in full-bleed media-position mode (shared split.css handles that) */
|
|
109
|
+
.rf-realm[data-layout="split"]:not([data-media-position="top"]) > .rf-realm__scene,
|
|
110
|
+
.rf-realm[data-layout="split-reverse"]:not([data-media-position="top"]) > .rf-realm__scene {
|
|
111
|
+
margin-bottom: var(--rf-spacing-md);
|
|
112
|
+
}
|
|
113
|
+
}
|
|
114
|
+
/* Reset grid placement when data-collapse triggers single-column from shared split.css */
|
|
115
|
+
@media (max-width: 640px) {
|
|
116
|
+
.rf-realm[data-collapse="sm"] > .rf-realm__badge,
|
|
117
|
+
.rf-realm[data-collapse="sm"] > span[property="name"],
|
|
118
|
+
.rf-realm[data-collapse="sm"] > .rf-realm__content,
|
|
119
|
+
.rf-realm[data-collapse="sm"] > .rf-realm__scene {
|
|
113
120
|
grid-column: auto;
|
|
114
121
|
grid-row: auto;
|
|
115
122
|
}
|
|
123
|
+
.rf-realm[data-collapse="sm"]:not([data-media-position="top"]) > .rf-realm__scene {
|
|
124
|
+
margin-bottom: var(--rf-spacing-md);
|
|
125
|
+
}
|
|
126
|
+
}
|
|
127
|
+
@media (max-width: 768px) {
|
|
128
|
+
.rf-realm[data-collapse="md"] > .rf-realm__badge,
|
|
129
|
+
.rf-realm[data-collapse="md"] > span[property="name"],
|
|
130
|
+
.rf-realm[data-collapse="md"] > .rf-realm__content,
|
|
131
|
+
.rf-realm[data-collapse="md"] > .rf-realm__scene {
|
|
132
|
+
grid-column: auto;
|
|
133
|
+
grid-row: auto;
|
|
134
|
+
}
|
|
135
|
+
.rf-realm[data-collapse="md"]:not([data-media-position="top"]) > .rf-realm__scene {
|
|
136
|
+
margin-bottom: var(--rf-spacing-md);
|
|
137
|
+
}
|
|
138
|
+
}
|
|
139
|
+
@media (max-width: 1024px) {
|
|
140
|
+
.rf-realm[data-collapse="lg"] > .rf-realm__badge,
|
|
141
|
+
.rf-realm[data-collapse="lg"] > span[property="name"],
|
|
142
|
+
.rf-realm[data-collapse="lg"] > .rf-realm__content,
|
|
143
|
+
.rf-realm[data-collapse="lg"] > .rf-realm__scene {
|
|
144
|
+
grid-column: auto;
|
|
145
|
+
grid-row: auto;
|
|
146
|
+
}
|
|
147
|
+
.rf-realm[data-collapse="lg"]:not([data-media-position="top"]) > .rf-realm__scene {
|
|
148
|
+
margin-bottom: var(--rf-spacing-md);
|
|
149
|
+
}
|
|
116
150
|
}
|
|
117
151
|
|
|
118
152
|
/* Split layout scene gets subtle depth */
|
package/styles/runes/recipe.css
CHANGED
|
@@ -1,14 +1,5 @@
|
|
|
1
1
|
/* Recipe — editorial cookbook aesthetic */
|
|
2
2
|
|
|
3
|
-
/* Root: no border box, just flow spacing */
|
|
4
|
-
.rf-recipe {
|
|
5
|
-
margin: 1.5rem 0;
|
|
6
|
-
}
|
|
7
|
-
|
|
8
|
-
/* Header */
|
|
9
|
-
.rf-recipe__header {
|
|
10
|
-
margin-bottom: 1.25rem;
|
|
11
|
-
}
|
|
12
3
|
.rf-recipe .rf-recipe__eyebrow {
|
|
13
4
|
font-size: 0.8rem;
|
|
14
5
|
font-weight: 600;
|
|
@@ -30,31 +21,6 @@
|
|
|
30
21
|
margin-bottom: 1rem;
|
|
31
22
|
}
|
|
32
23
|
|
|
33
|
-
/* Meta bar — soft surface strip instead of bordered divider */
|
|
34
|
-
.rf-recipe__meta {
|
|
35
|
-
display: flex;
|
|
36
|
-
flex-wrap: wrap;
|
|
37
|
-
gap: 0.75rem 1.25rem;
|
|
38
|
-
align-items: center;
|
|
39
|
-
background: var(--rf-color-surface);
|
|
40
|
-
border-radius: var(--rf-radius-md);
|
|
41
|
-
padding: 0.625rem 1rem;
|
|
42
|
-
margin-bottom: 1.5rem;
|
|
43
|
-
}
|
|
44
|
-
.rf-recipe__meta-item {
|
|
45
|
-
font-size: 0.8125rem;
|
|
46
|
-
color: var(--rf-color-muted);
|
|
47
|
-
font-weight: 400;
|
|
48
|
-
}
|
|
49
|
-
|
|
50
|
-
/* Difficulty — plain text, same style as other meta items */
|
|
51
|
-
.rf-recipe__badge {
|
|
52
|
-
font-size: 0.8125rem;
|
|
53
|
-
font-weight: 400;
|
|
54
|
-
text-transform: capitalize;
|
|
55
|
-
color: var(--rf-color-muted);
|
|
56
|
-
}
|
|
57
|
-
|
|
58
24
|
/* Content wrapper */
|
|
59
25
|
.rf-recipe__content {
|
|
60
26
|
display: flex;
|
|
@@ -65,6 +31,7 @@
|
|
|
65
31
|
/* Ingredients — surfaced zone with custom markers */
|
|
66
32
|
.rf-recipe__content ul {
|
|
67
33
|
background: var(--rf-color-surface);
|
|
34
|
+
border: 1px solid var(--rf-color-border);
|
|
68
35
|
border-radius: var(--rf-radius-md);
|
|
69
36
|
padding: 1.25rem 1.25rem 1.25rem 2.5rem;
|
|
70
37
|
list-style: disc;
|
|
@@ -112,6 +79,11 @@
|
|
|
112
79
|
border-radius: var(--rf-radius-full);
|
|
113
80
|
}
|
|
114
81
|
|
|
82
|
+
.rf-recipe__content ol > li > p,
|
|
83
|
+
.rf-recipe__content ul > li > p {
|
|
84
|
+
margin: 0;
|
|
85
|
+
}
|
|
86
|
+
|
|
115
87
|
/* Tips — callout accent like hint */
|
|
116
88
|
.rf-recipe__content blockquote {
|
|
117
89
|
border-left: 2px solid var(--rf-color-primary);
|
|
@@ -128,61 +100,7 @@
|
|
|
128
100
|
margin: 0;
|
|
129
101
|
}
|
|
130
102
|
|
|
131
|
-
/* Media zone */
|
|
132
|
-
.rf-recipe__media {
|
|
133
|
-
border-radius: var(--rf-radius-lg);
|
|
134
|
-
overflow: hidden;
|
|
135
|
-
}
|
|
103
|
+
/* Media zone — domain-specific overrides (base styles in split.css) */
|
|
136
104
|
.rf-recipe__media img {
|
|
137
|
-
display: block;
|
|
138
|
-
width: 100%;
|
|
139
|
-
height: auto;
|
|
140
105
|
border-radius: var(--rf-radius-lg);
|
|
141
106
|
}
|
|
142
|
-
|
|
143
|
-
/* Split layout — shared */
|
|
144
|
-
.rf-recipe[data-layout="split"],
|
|
145
|
-
.rf-recipe[data-layout="split-reverse"] {
|
|
146
|
-
display: grid;
|
|
147
|
-
gap: var(--split-gap, 2rem);
|
|
148
|
-
align-items: var(--split-valign, start);
|
|
149
|
-
}
|
|
150
|
-
/* Both use the same column template */
|
|
151
|
-
.rf-recipe[data-layout="split"],
|
|
152
|
-
.rf-recipe[data-layout="split-reverse"] {
|
|
153
|
-
grid-template-columns: var(--split-ratio, 1fr 1fr);
|
|
154
|
-
}
|
|
155
|
-
/* Split: content left (col 1), media right (col 2) — DOM order is media first,
|
|
156
|
-
so explicit placement is needed */
|
|
157
|
-
.rf-recipe[data-layout="split"] > .rf-recipe__content {
|
|
158
|
-
grid-column: 1;
|
|
159
|
-
grid-row: 2;
|
|
160
|
-
}
|
|
161
|
-
.rf-recipe[data-layout="split"] > .rf-recipe__media {
|
|
162
|
-
grid-column: 2;
|
|
163
|
-
grid-row: 2;
|
|
164
|
-
}
|
|
165
|
-
/* Split-reverse: media left (col 1), content right (col 2) — matches DOM order */
|
|
166
|
-
/* Meta bar spans full width in split layouts */
|
|
167
|
-
.rf-recipe[data-layout="split"] > .rf-recipe__meta,
|
|
168
|
-
.rf-recipe[data-layout="split-reverse"] > .rf-recipe__meta {
|
|
169
|
-
grid-column: 1 / -1;
|
|
170
|
-
}
|
|
171
|
-
/* Collapse to single column on small screens */
|
|
172
|
-
@media (max-width: 640px) {
|
|
173
|
-
.rf-recipe[data-layout="split"],
|
|
174
|
-
.rf-recipe[data-layout="split-reverse"] {
|
|
175
|
-
grid-template-columns: 1fr;
|
|
176
|
-
}
|
|
177
|
-
.rf-recipe[data-layout="split"] > .rf-recipe__content,
|
|
178
|
-
.rf-recipe[data-layout="split"] > .rf-recipe__media {
|
|
179
|
-
grid-column: auto;
|
|
180
|
-
grid-row: auto;
|
|
181
|
-
}
|
|
182
|
-
}
|
|
183
|
-
|
|
184
|
-
/* Split layout media gets subtle depth */
|
|
185
|
-
.rf-recipe[data-layout="split"] .rf-recipe__media img,
|
|
186
|
-
.rf-recipe[data-layout="split-reverse"] .rf-recipe__media img {
|
|
187
|
-
box-shadow: 0 2px 8px rgba(0, 0, 0, 0.08);
|
|
188
|
-
}
|