@cogenta/theme-restaurant 0.3.2 → 0.5.3
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/dist/src/index.d.ts +3 -0
- package/dist/src/index.d.ts.map +1 -1
- package/dist/src/index.js +3 -0
- package/dist/src/index.js.map +1 -1
- package/dist/src/render/blocks/accordion.d.ts +7 -0
- package/dist/src/render/blocks/accordion.d.ts.map +1 -1
- package/dist/src/render/blocks/accordion.js +10 -16
- package/dist/src/render/blocks/accordion.js.map +1 -1
- package/dist/src/render/blocks/collection-list.d.ts +4 -11
- package/dist/src/render/blocks/collection-list.d.ts.map +1 -1
- package/dist/src/render/blocks/collection-list.js +96 -96
- package/dist/src/render/blocks/collection-list.js.map +1 -1
- package/dist/src/render/blocks/cta.d.ts +7 -4
- package/dist/src/render/blocks/cta.d.ts.map +1 -1
- package/dist/src/render/blocks/cta.js +9 -7
- package/dist/src/render/blocks/cta.js.map +1 -1
- package/dist/src/render/blocks/embed.d.ts.map +1 -1
- package/dist/src/render/blocks/embed.js +30 -28
- package/dist/src/render/blocks/embed.js.map +1 -1
- package/dist/src/render/blocks/faq.d.ts +13 -1
- package/dist/src/render/blocks/faq.d.ts.map +1 -1
- package/dist/src/render/blocks/faq.js +15 -11
- package/dist/src/render/blocks/faq.js.map +1 -1
- package/dist/src/render/blocks/feature-grid.d.ts.map +1 -1
- package/dist/src/render/blocks/feature-grid.js +43 -16
- package/dist/src/render/blocks/feature-grid.js.map +1 -1
- package/dist/src/render/blocks/gallery.d.ts +0 -7
- package/dist/src/render/blocks/gallery.d.ts.map +1 -1
- package/dist/src/render/blocks/gallery.js +28 -10
- package/dist/src/render/blocks/gallery.js.map +1 -1
- package/dist/src/render/blocks/hero.d.ts +16 -9
- package/dist/src/render/blocks/hero.d.ts.map +1 -1
- package/dist/src/render/blocks/hero.js +27 -20
- package/dist/src/render/blocks/hero.js.map +1 -1
- package/dist/src/render/blocks/logo-strip.d.ts +6 -0
- package/dist/src/render/blocks/logo-strip.d.ts.map +1 -1
- package/dist/src/render/blocks/logo-strip.js +7 -9
- package/dist/src/render/blocks/logo-strip.js.map +1 -1
- package/dist/src/render/blocks/logos.d.ts +8 -0
- package/dist/src/render/blocks/logos.d.ts.map +1 -1
- package/dist/src/render/blocks/logos.js +18 -18
- package/dist/src/render/blocks/logos.js.map +1 -1
- package/dist/src/render/blocks/media-figure.d.ts +14 -3
- package/dist/src/render/blocks/media-figure.d.ts.map +1 -1
- package/dist/src/render/blocks/media-figure.js +34 -16
- package/dist/src/render/blocks/media-figure.js.map +1 -1
- package/dist/src/render/blocks/pricing-table.d.ts.map +1 -1
- package/dist/src/render/blocks/pricing-table.js +17 -22
- package/dist/src/render/blocks/pricing-table.js.map +1 -1
- package/dist/src/render/blocks/prose.d.ts +11 -6
- package/dist/src/render/blocks/prose.d.ts.map +1 -1
- package/dist/src/render/blocks/prose.js +13 -7
- package/dist/src/render/blocks/prose.js.map +1 -1
- package/dist/src/render/blocks/quote.d.ts +6 -2
- package/dist/src/render/blocks/quote.d.ts.map +1 -1
- package/dist/src/render/blocks/quote.js +14 -12
- package/dist/src/render/blocks/quote.js.map +1 -1
- package/dist/src/render/blocks/stat-counter.d.ts +6 -0
- package/dist/src/render/blocks/stat-counter.d.ts.map +1 -1
- package/dist/src/render/blocks/stat-counter.js +7 -10
- package/dist/src/render/blocks/stat-counter.js.map +1 -1
- package/dist/src/render/blocks/stats.d.ts +7 -0
- package/dist/src/render/blocks/stats.d.ts.map +1 -1
- package/dist/src/render/blocks/stats.js +8 -16
- package/dist/src/render/blocks/stats.js.map +1 -1
- package/dist/src/render/blocks/testimonial.d.ts +5 -11
- package/dist/src/render/blocks/testimonial.d.ts.map +1 -1
- package/dist/src/render/blocks/testimonial.js +9 -17
- package/dist/src/render/blocks/testimonial.js.map +1 -1
- package/dist/src/render/chrome.d.ts.map +1 -1
- package/dist/src/render/chrome.js +101 -84
- package/dist/src/render/chrome.js.map +1 -1
- package/dist/src/render/dish.d.ts +13 -0
- package/dist/src/render/dish.d.ts.map +1 -0
- package/dist/src/render/dish.js +84 -0
- package/dist/src/render/dish.js.map +1 -0
- package/dist/src/render/layout.d.ts +23 -0
- package/dist/src/render/layout.d.ts.map +1 -0
- package/dist/src/render/layout.js +33 -0
- package/dist/src/render/layout.js.map +1 -0
- package/dist/src/render/menu.d.ts +53 -0
- package/dist/src/render/menu.d.ts.map +1 -0
- package/dist/src/render/menu.js +99 -0
- package/dist/src/render/menu.js.map +1 -0
- package/dist/src/render/render-block.d.ts +19 -0
- package/dist/src/render/render-block.d.ts.map +1 -1
- package/dist/src/render/render-block.js +50 -39
- package/dist/src/render/render-block.js.map +1 -1
- package/dist/src/render/strings.d.ts +15 -0
- package/dist/src/render/strings.d.ts.map +1 -0
- package/dist/src/render/strings.js +23 -0
- package/dist/src/render/strings.js.map +1 -0
- package/dist/src/render/term-archive.d.ts +10 -4
- package/dist/src/render/term-archive.d.ts.map +1 -1
- package/dist/src/render/term-archive.js +25 -16
- package/dist/src/render/term-archive.js.map +1 -1
- package/dist/src/render/widget-areas.d.ts +13 -0
- package/dist/src/render/widget-areas.d.ts.map +1 -0
- package/dist/src/render/widget-areas.js +20 -0
- package/dist/src/render/widget-areas.js.map +1 -0
- package/dist/theme.config.d.ts +1 -1
- package/dist/theme.config.js +2 -2
- package/dist/theme.config.js.map +1 -1
- package/package.json +5 -5
- package/src/index.ts +3 -0
- package/src/render/blocks/accordion.ts +18 -47
- package/src/render/blocks/collection-list.ts +245 -133
- package/src/render/blocks/cta.ts +20 -11
- package/src/render/blocks/embed.ts +45 -36
- package/src/render/blocks/faq.ts +32 -25
- package/src/render/blocks/feature-grid.ts +83 -33
- package/src/render/blocks/gallery.ts +39 -21
- package/src/render/blocks/hero.ts +41 -34
- package/src/render/blocks/logo-strip.ts +27 -25
- package/src/render/blocks/logos.ts +34 -43
- package/src/render/blocks/media-figure.ts +49 -24
- package/src/render/blocks/pricing-table.ts +30 -42
- package/src/render/blocks/prose.ts +18 -9
- package/src/render/blocks/quote.ts +29 -19
- package/src/render/blocks/stat-counter.ts +24 -29
- package/src/render/blocks/stats.ts +30 -40
- package/src/render/blocks/testimonial.ts +17 -22
- package/src/render/chrome.ts +113 -95
- package/src/render/dish.ts +195 -0
- package/src/render/layout.ts +64 -0
- package/src/render/menu.ts +117 -0
- package/src/render/render-block.ts +51 -40
- package/src/render/strings.ts +44 -0
- package/src/render/term-archive.ts +78 -44
- package/src/render/widget-areas.ts +23 -0
- package/src/styles/archive.css +46 -56
- package/src/styles/base.css +807 -554
- package/src/styles/blocks.css +723 -641
- package/src/styles/menu.css +482 -0
- package/src/styles/theme.css +24 -25
- package/src/styles/tokens.css +239 -225
- package/src/styles/widgets.css +853 -0
- package/tokens.json +16 -16
package/src/styles/base.css
CHANGED
|
@@ -1,8 +1,7 @@
|
|
|
1
1
|
/*
|
|
2
|
-
* Document, accessibility floor,
|
|
3
|
-
*
|
|
4
|
-
*
|
|
5
|
-
* here reads a `--cogenta-*` token directly.
|
|
2
|
+
* Document, accessibility floor, the grid, section titles, page titles,
|
|
3
|
+
* actions, the header and footer, and the utility pages the host renders
|
|
4
|
+
* (search, forms, comments). Everything reads `tokens.css`.
|
|
6
5
|
*/
|
|
7
6
|
|
|
8
7
|
/* --------------------------------------------------------------------------
|
|
@@ -15,208 +14,225 @@
|
|
|
15
14
|
box-sizing: border-box;
|
|
16
15
|
}
|
|
17
16
|
|
|
18
|
-
|
|
19
|
-
margin: 0;
|
|
20
|
-
background: var(--cg-canvas);
|
|
21
|
-
color: var(--cg-ink);
|
|
22
|
-
font-family: var(--cogenta-font-sans);
|
|
23
|
-
font-size: var(--cg-text-md);
|
|
24
|
-
line-height: var(--cg-leading-normal);
|
|
25
|
-
font-kerning: normal;
|
|
26
|
-
font-variant-ligatures: common-ligatures;
|
|
27
|
-
text-underline-offset: 0.15em;
|
|
28
|
-
text-decoration-thickness: from-font;
|
|
17
|
+
html {
|
|
29
18
|
-webkit-text-size-adjust: 100%;
|
|
19
|
+
text-size-adjust: 100%;
|
|
20
|
+
scroll-padding-block-start: var(--cr-s6);
|
|
21
|
+
hanging-punctuation: first allow-end last;
|
|
30
22
|
}
|
|
31
23
|
|
|
32
|
-
|
|
33
|
-
tracking at large sizes, the opposite instinct from a grotesque display
|
|
34
|
-
face. Every custom class below inherits this rather than restating it. */
|
|
35
|
-
h1,
|
|
36
|
-
h2,
|
|
37
|
-
h3,
|
|
38
|
-
h4,
|
|
39
|
-
h5,
|
|
40
|
-
h6 {
|
|
24
|
+
body {
|
|
41
25
|
margin: 0;
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
font-family: var(--cogenta-font-sans);
|
|
54
|
-
font-size: var(--cg-text-xs);
|
|
55
|
-
font-weight: var(--cg-weight-medium);
|
|
56
|
-
letter-spacing: var(--cg-tracking-caps);
|
|
57
|
-
text-transform: uppercase;
|
|
26
|
+
background: var(--cr-canvas);
|
|
27
|
+
color: var(--cr-ink);
|
|
28
|
+
font-family: var(--cr-font-text);
|
|
29
|
+
font-size: var(--cr-text-md);
|
|
30
|
+
font-weight: var(--cr-weight-regular);
|
|
31
|
+
line-height: var(--cr-leading-text);
|
|
32
|
+
font-kerning: normal;
|
|
33
|
+
font-variant-ligatures: common-ligatures;
|
|
34
|
+
font-synthesis: none;
|
|
35
|
+
text-rendering: optimizeLegibility;
|
|
36
|
+
-webkit-font-smoothing: antialiased;
|
|
58
37
|
}
|
|
59
38
|
|
|
60
39
|
::selection {
|
|
61
|
-
background: var(--
|
|
62
|
-
color: var(--
|
|
40
|
+
background: var(--cr-brass);
|
|
41
|
+
color: var(--cr-brass-fg);
|
|
63
42
|
}
|
|
64
43
|
|
|
65
44
|
img,
|
|
66
45
|
video,
|
|
67
46
|
iframe {
|
|
68
|
-
|
|
69
|
-
|
|
47
|
+
display: block;
|
|
48
|
+
max-inline-size: 100%;
|
|
49
|
+
block-size: auto;
|
|
70
50
|
}
|
|
71
51
|
|
|
72
52
|
img {
|
|
73
|
-
display: block;
|
|
74
53
|
object-fit: cover;
|
|
75
54
|
}
|
|
76
55
|
|
|
56
|
+
:where(img, video) {
|
|
57
|
+
filter: brightness(var(--cr-image-brightness));
|
|
58
|
+
}
|
|
59
|
+
|
|
60
|
+
:where(h1, h2, h3, h4, h5, h6) {
|
|
61
|
+
margin: 0;
|
|
62
|
+
font-family: var(--cr-font-display);
|
|
63
|
+
font-weight: var(--cr-weight-regular);
|
|
64
|
+
line-height: var(--cr-leading-heading);
|
|
65
|
+
letter-spacing: var(--cr-tracking-heading);
|
|
66
|
+
text-wrap: balance;
|
|
67
|
+
}
|
|
68
|
+
|
|
69
|
+
:where(p, li, dd, figcaption, blockquote) {
|
|
70
|
+
text-wrap: pretty;
|
|
71
|
+
}
|
|
72
|
+
|
|
77
73
|
:where(a) {
|
|
78
|
-
color: var(--
|
|
79
|
-
text-decoration-
|
|
74
|
+
color: var(--cr-ink);
|
|
75
|
+
text-decoration-line: underline;
|
|
76
|
+
text-decoration-thickness: var(--cr-rule);
|
|
77
|
+
text-decoration-color: var(--cr-line-strong);
|
|
78
|
+
text-underline-offset: 0.24em;
|
|
80
79
|
transition:
|
|
81
|
-
color var(--
|
|
82
|
-
text-decoration-color var(--
|
|
80
|
+
color var(--cr-duration) var(--cr-ease),
|
|
81
|
+
text-decoration-color var(--cr-duration) var(--cr-ease);
|
|
83
82
|
}
|
|
84
83
|
|
|
85
84
|
:where(a:hover) {
|
|
86
|
-
color: var(--cg-accent-hover);
|
|
87
85
|
text-decoration-color: currentColor;
|
|
88
86
|
}
|
|
89
87
|
|
|
90
88
|
:where(hr) {
|
|
89
|
+
block-size: var(--cr-rule);
|
|
90
|
+
border: 0;
|
|
91
|
+
margin-block: var(--cr-s10);
|
|
92
|
+
background: var(--cr-line);
|
|
93
|
+
}
|
|
94
|
+
|
|
95
|
+
:where(code, kbd, samp, pre) {
|
|
96
|
+
font-family: var(--cr-font-code);
|
|
97
|
+
font-size: 0.88em;
|
|
98
|
+
}
|
|
99
|
+
|
|
100
|
+
:where(data, time) {
|
|
101
|
+
font-variant-numeric: lining-nums tabular-nums;
|
|
102
|
+
}
|
|
103
|
+
|
|
104
|
+
.cg-visually-hidden {
|
|
105
|
+
position: absolute;
|
|
106
|
+
inline-size: 1px;
|
|
91
107
|
block-size: 1px;
|
|
108
|
+
margin: -1px;
|
|
109
|
+
padding: 0;
|
|
110
|
+
overflow: hidden;
|
|
111
|
+
clip-path: inset(50%);
|
|
112
|
+
white-space: nowrap;
|
|
92
113
|
border: 0;
|
|
93
|
-
margin-block: var(--cg-s10);
|
|
94
|
-
background: var(--cg-line);
|
|
95
114
|
}
|
|
96
115
|
|
|
97
116
|
/* --------------------------------------------------------------------------
|
|
98
|
-
Focus, targets, motion
|
|
117
|
+
Focus, targets, motion. Motion is a colour or an underline changing, in
|
|
118
|
+
under 150 ms; nothing moves in space, nothing fades in on scroll.
|
|
99
119
|
-------------------------------------------------------------------------- */
|
|
100
120
|
|
|
101
|
-
:where(a, button, summary, [tabindex]):focus-visible {
|
|
102
|
-
outline:
|
|
121
|
+
:where(a, button, summary, input, select, textarea, [tabindex]):focus-visible {
|
|
122
|
+
outline: var(--cr-rule-strong) solid var(--cr-brass);
|
|
103
123
|
outline-offset: 3px;
|
|
104
|
-
border-radius: var(--cg-radius-xs);
|
|
105
124
|
}
|
|
106
125
|
|
|
107
|
-
:where(
|
|
108
|
-
.cg-action,
|
|
109
|
-
.cg-faq__question,
|
|
110
|
-
.cg-hours__question,
|
|
111
|
-
.cg-press__link,
|
|
112
|
-
.cg-nav__cta,
|
|
113
|
-
.cg-mobile-nav__toggle
|
|
114
|
-
) {
|
|
126
|
+
:where(.cg-action, .cr-nav-toggle-label, .cg-theme-toggle, summary) {
|
|
115
127
|
min-block-size: 44px;
|
|
116
|
-
min-inline-size: 44px;
|
|
117
|
-
}
|
|
118
|
-
|
|
119
|
-
@supports (animation-timeline: view()) {
|
|
120
|
-
@media (prefers-reduced-motion: no-preference) {
|
|
121
|
-
@keyframes cg-settle {
|
|
122
|
-
from {
|
|
123
|
-
opacity: 0;
|
|
124
|
-
transform: translateY(var(--cg-s3));
|
|
125
|
-
}
|
|
126
|
-
|
|
127
|
-
to {
|
|
128
|
-
opacity: 1;
|
|
129
|
-
transform: none;
|
|
130
|
-
}
|
|
131
|
-
}
|
|
132
|
-
|
|
133
|
-
[data-block] {
|
|
134
|
-
animation: cg-settle linear both;
|
|
135
|
-
animation-timeline: view();
|
|
136
|
-
animation-range: entry 0% cover 20%;
|
|
137
|
-
}
|
|
138
|
-
}
|
|
139
128
|
}
|
|
140
129
|
|
|
130
|
+
/* Every transition in this theme reads `--cr-duration`, so reduced motion is
|
|
131
|
+
one declaration rather than an `!important` sweep over every element. */
|
|
141
132
|
@media (prefers-reduced-motion: reduce) {
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
*::after {
|
|
145
|
-
animation-duration: 1ms !important;
|
|
146
|
-
animation-iteration-count: 1 !important;
|
|
147
|
-
transition-duration: 1ms !important;
|
|
148
|
-
scroll-behavior: auto !important;
|
|
133
|
+
:root {
|
|
134
|
+
--cr-duration: 0ms;
|
|
149
135
|
}
|
|
150
136
|
}
|
|
151
137
|
|
|
152
138
|
.cg-skip-link {
|
|
153
139
|
position: absolute;
|
|
154
|
-
inset-inline-start: var(--
|
|
155
|
-
inset-block-start: calc(var(--
|
|
156
|
-
z-index:
|
|
157
|
-
padding: var(--
|
|
158
|
-
background: var(--
|
|
159
|
-
color: var(--
|
|
160
|
-
|
|
161
|
-
font-weight: var(--
|
|
140
|
+
inset-inline-start: var(--cr-s3);
|
|
141
|
+
inset-block-start: calc(var(--cr-s16) * -1);
|
|
142
|
+
z-index: 40;
|
|
143
|
+
padding: var(--cr-s2) var(--cr-s4);
|
|
144
|
+
background: var(--cr-action);
|
|
145
|
+
color: var(--cr-action-fg);
|
|
146
|
+
font-size: var(--cr-text-caption);
|
|
147
|
+
font-weight: var(--cr-weight-medium);
|
|
162
148
|
text-decoration: none;
|
|
163
|
-
transition: inset-block-start var(--cg-duration) var(--cg-ease);
|
|
164
149
|
}
|
|
165
150
|
|
|
166
151
|
.cg-skip-link:focus-visible {
|
|
167
|
-
inset-block-start: var(--
|
|
168
|
-
outline-color: var(--cg-canvas);
|
|
152
|
+
inset-block-start: var(--cr-s3);
|
|
169
153
|
}
|
|
170
154
|
|
|
171
155
|
/* --------------------------------------------------------------------------
|
|
172
|
-
|
|
156
|
+
The grid. Every block is a section around a twelve-column container; the
|
|
157
|
+
section rhythm is one variable, applied to all of them.
|
|
173
158
|
-------------------------------------------------------------------------- */
|
|
174
159
|
|
|
175
|
-
.
|
|
160
|
+
.cr-main {
|
|
176
161
|
display: flow-root;
|
|
162
|
+
overflow-x: clip;
|
|
163
|
+
padding-block-end: calc(var(--cr-section) / 2);
|
|
177
164
|
}
|
|
178
165
|
|
|
179
|
-
|
|
180
|
-
|
|
166
|
+
.cr-container {
|
|
167
|
+
display: grid;
|
|
168
|
+
grid-template-columns: repeat(var(--cr-columns), minmax(0, 1fr));
|
|
169
|
+
column-gap: var(--cr-col-gap);
|
|
170
|
+
align-items: start;
|
|
171
|
+
inline-size: 100%;
|
|
172
|
+
max-inline-size: calc(var(--cr-page) + var(--cr-gutter) * 2);
|
|
181
173
|
margin-inline: auto;
|
|
182
|
-
|
|
183
|
-
padding-inline: var(--cg-gutter);
|
|
174
|
+
padding-inline: var(--cr-gutter);
|
|
184
175
|
}
|
|
185
176
|
|
|
186
|
-
/*
|
|
187
|
-
|
|
188
|
-
|
|
189
|
-
|
|
190
|
-
|
|
191
|
-
padding-inline: 0;
|
|
192
|
-
margin-block: 0;
|
|
177
|
+
/* Below the wide breakpoint twelve columns only make slivers: every child
|
|
178
|
+
takes the full row, and each block redistributes from there. */
|
|
179
|
+
.cr-container > * {
|
|
180
|
+
grid-column: 1 / -1;
|
|
181
|
+
min-inline-size: 0;
|
|
193
182
|
}
|
|
194
183
|
|
|
195
|
-
|
|
184
|
+
.cr-section {
|
|
185
|
+
padding-block: calc(var(--cr-section) / 2);
|
|
186
|
+
}
|
|
196
187
|
|
|
197
|
-
|
|
198
|
-
|
|
199
|
-
|
|
188
|
+
/* A page that ends on a band ends on it: no strip of paper between the band
|
|
189
|
+
and the footer. */
|
|
190
|
+
:is(.cr-main, .cg-sidebar-layout__content) > [data-variant-background]:last-child {
|
|
191
|
+
margin-block-end: calc(var(--cr-section) / -2);
|
|
192
|
+
}
|
|
193
|
+
|
|
194
|
+
/* --- section titles ----------------------------------------------------------
|
|
195
|
+
A titled block names itself in the display serif, on the first column,
|
|
196
|
+
with the same space under it everywhere. */
|
|
197
|
+
|
|
198
|
+
.cr-head {
|
|
199
|
+
margin-block-end: var(--cr-s10);
|
|
200
200
|
}
|
|
201
201
|
|
|
202
|
-
|
|
203
|
-
|
|
202
|
+
.cr-head__title {
|
|
203
|
+
max-inline-size: 24ch;
|
|
204
|
+
font-size: var(--cr-size-section);
|
|
205
|
+
font-weight: var(--cr-weight-light);
|
|
206
|
+
line-height: var(--cr-leading-heading);
|
|
207
|
+
letter-spacing: var(--cr-tracking-display);
|
|
204
208
|
}
|
|
205
209
|
|
|
210
|
+
.cr-empty {
|
|
211
|
+
margin: 0;
|
|
212
|
+
padding-block: var(--cr-s6);
|
|
213
|
+
border-block: var(--cr-rule) solid var(--cr-line);
|
|
214
|
+
color: var(--cr-ink-muted);
|
|
215
|
+
font-size: var(--cr-text-caption);
|
|
216
|
+
}
|
|
217
|
+
|
|
218
|
+
/* --- per-block variants (blocks@2.0, RFC 0002) --------------------------- */
|
|
219
|
+
|
|
220
|
+
[data-block][data-variant-background="muted"],
|
|
206
221
|
[data-block][data-variant-background="image"] {
|
|
207
|
-
background: var(--
|
|
222
|
+
background: var(--cr-surface);
|
|
223
|
+
padding-block: calc(var(--cr-section) * 0.7);
|
|
208
224
|
}
|
|
209
225
|
|
|
210
|
-
[data-block][data-variant-
|
|
211
|
-
margin-block: calc(var(--
|
|
226
|
+
[data-block][data-variant-background] + [data-block][data-variant-background] {
|
|
227
|
+
margin-block-start: calc(var(--cr-section) / 2);
|
|
212
228
|
}
|
|
213
229
|
|
|
214
|
-
[data-block][data-variant-spacing="
|
|
215
|
-
|
|
230
|
+
[data-block][data-variant-spacing="compact"] {
|
|
231
|
+
padding-block: calc(var(--cr-section) / 4);
|
|
216
232
|
}
|
|
217
233
|
|
|
218
|
-
[data-block][data-variant-
|
|
219
|
-
|
|
234
|
+
[data-block][data-variant-spacing="spacious"] {
|
|
235
|
+
padding-block: calc(var(--cr-section) * 0.85);
|
|
220
236
|
}
|
|
221
237
|
|
|
222
238
|
[data-block][data-variant-align="center"] {
|
|
@@ -227,193 +243,285 @@ img {
|
|
|
227
243
|
text-align: end;
|
|
228
244
|
}
|
|
229
245
|
|
|
230
|
-
[data-block][data-variant-width="full"] {
|
|
246
|
+
[data-block][data-variant-width="full"] > .cr-container {
|
|
231
247
|
max-inline-size: none;
|
|
232
|
-
padding-inline: 0;
|
|
233
248
|
}
|
|
234
249
|
|
|
235
|
-
|
|
236
|
-
|
|
237
|
-
|
|
238
|
-
|
|
239
|
-
padding-inline: var(--cg-gutter);
|
|
240
|
-
font-size: var(--cg-text-3xl);
|
|
241
|
-
text-align: center;
|
|
250
|
+
/* --- the title of any page that has no hero and is not a dish ------------- */
|
|
251
|
+
|
|
252
|
+
.cr-page-head {
|
|
253
|
+
padding-block: calc(var(--cr-section) * 0.5) calc(var(--cr-section) * 0.1);
|
|
242
254
|
}
|
|
243
255
|
|
|
244
|
-
|
|
245
|
-
|
|
246
|
-
own (this theme's `menu_item`) still gets: title, excerpt, meta line,
|
|
247
|
-
cover photo, all centred like the rest of this theme's reading pages. */
|
|
248
|
-
.cg-entry-header {
|
|
249
|
-
max-inline-size: var(--cg-page-narrow);
|
|
250
|
-
margin-inline: auto;
|
|
251
|
-
margin-block: var(--cg-section-y) var(--cg-s8);
|
|
252
|
-
padding-inline: var(--cg-gutter);
|
|
253
|
-
text-align: center;
|
|
256
|
+
.cr-page-head__inner {
|
|
257
|
+
row-gap: var(--cr-s5);
|
|
254
258
|
}
|
|
255
259
|
|
|
256
|
-
.
|
|
260
|
+
.cr-page-head__title {
|
|
261
|
+
font-size: var(--cr-size-title);
|
|
262
|
+
font-weight: var(--cr-weight-light);
|
|
263
|
+
line-height: var(--cr-leading-display);
|
|
264
|
+
letter-spacing: var(--cr-tracking-display);
|
|
265
|
+
}
|
|
266
|
+
|
|
267
|
+
.cr-page-head__lead {
|
|
268
|
+
margin: 0;
|
|
269
|
+
max-inline-size: 38ch;
|
|
270
|
+
color: var(--cr-ink-muted);
|
|
271
|
+
font-family: var(--cr-font-display);
|
|
272
|
+
font-size: var(--cr-size-lead);
|
|
273
|
+
font-style: italic;
|
|
274
|
+
line-height: var(--cr-leading-lead);
|
|
275
|
+
}
|
|
276
|
+
|
|
277
|
+
.cr-page-head__meta {
|
|
257
278
|
display: flex;
|
|
258
279
|
flex-wrap: wrap;
|
|
259
|
-
|
|
260
|
-
|
|
261
|
-
|
|
262
|
-
|
|
263
|
-
|
|
264
|
-
font-size: var(--cg-text-xs);
|
|
265
|
-
letter-spacing: var(--cg-tracking-caps);
|
|
266
|
-
text-transform: uppercase;
|
|
267
|
-
color: var(--cg-accent);
|
|
280
|
+
gap: var(--cr-s1) var(--cr-s4);
|
|
281
|
+
margin: 0;
|
|
282
|
+
color: var(--cr-ink-muted);
|
|
283
|
+
font-size: var(--cr-text-caption);
|
|
284
|
+
font-variant-numeric: lining-nums tabular-nums;
|
|
268
285
|
}
|
|
269
286
|
|
|
270
|
-
.
|
|
271
|
-
margin:
|
|
272
|
-
font-size: var(--cg-text-3xl);
|
|
287
|
+
.cr-page-head__cover {
|
|
288
|
+
margin: var(--cr-s6) 0 0;
|
|
273
289
|
}
|
|
274
290
|
|
|
275
|
-
.
|
|
276
|
-
|
|
277
|
-
|
|
278
|
-
|
|
291
|
+
.cr-page-head__image {
|
|
292
|
+
inline-size: 100%;
|
|
293
|
+
aspect-ratio: 3 / 2;
|
|
294
|
+
background: var(--cr-plate);
|
|
279
295
|
}
|
|
280
296
|
|
|
281
|
-
|
|
297
|
+
@media (min-width: 64rem) {
|
|
298
|
+
.cr-page-head__title,
|
|
299
|
+
.cr-page-head__meta,
|
|
300
|
+
.cr-archive__breadcrumb {
|
|
301
|
+
grid-column: 1 / span 9;
|
|
302
|
+
}
|
|
303
|
+
|
|
304
|
+
.cr-page-head__lead {
|
|
305
|
+
grid-column: 1 / span 7;
|
|
306
|
+
}
|
|
307
|
+
}
|
|
308
|
+
|
|
309
|
+
/* --------------------------------------------------------------------------
|
|
310
|
+
Actions: a filled rectangle in ink for the primary intent, and for the rest
|
|
311
|
+
the words underlined with an arrow after them. Square corners, no lift, no
|
|
312
|
+
shadow, no accent fill.
|
|
313
|
+
-------------------------------------------------------------------------- */
|
|
314
|
+
|
|
315
|
+
.cg-actions {
|
|
282
316
|
display: flex;
|
|
283
317
|
flex-wrap: wrap;
|
|
318
|
+
align-items: center;
|
|
319
|
+
gap: var(--cr-s3) var(--cr-s8);
|
|
320
|
+
margin: 0;
|
|
321
|
+
padding: 0;
|
|
322
|
+
list-style: none;
|
|
323
|
+
}
|
|
324
|
+
|
|
325
|
+
.cg-action,
|
|
326
|
+
.cg-widget__cta-action {
|
|
327
|
+
font-family: var(--cr-font-text);
|
|
328
|
+
font-size: var(--cr-text-md);
|
|
329
|
+
font-weight: var(--cr-weight-medium);
|
|
330
|
+
line-height: 1.2;
|
|
331
|
+
text-decoration: none;
|
|
332
|
+
transition:
|
|
333
|
+
background-color var(--cr-duration) var(--cr-ease),
|
|
334
|
+
color var(--cr-duration) var(--cr-ease),
|
|
335
|
+
border-color var(--cr-duration) var(--cr-ease),
|
|
336
|
+
text-decoration-color var(--cr-duration) var(--cr-ease);
|
|
337
|
+
}
|
|
338
|
+
|
|
339
|
+
/* A widget's call to action (`widgets.css`) is this same filled rectangle. */
|
|
340
|
+
.cg-action[data-emphasis="primary"],
|
|
341
|
+
.cg-widget__cta-action {
|
|
342
|
+
display: inline-flex;
|
|
343
|
+
align-items: center;
|
|
284
344
|
justify-content: center;
|
|
285
|
-
|
|
286
|
-
|
|
287
|
-
|
|
288
|
-
|
|
345
|
+
padding: var(--cr-s3) var(--cr-s8);
|
|
346
|
+
border: var(--cr-rule) solid var(--cr-action);
|
|
347
|
+
border-radius: var(--cr-radius-control);
|
|
348
|
+
background: var(--cr-action);
|
|
349
|
+
color: var(--cr-action-fg);
|
|
350
|
+
white-space: nowrap;
|
|
289
351
|
}
|
|
290
352
|
|
|
291
|
-
.cg-
|
|
292
|
-
|
|
293
|
-
|
|
294
|
-
|
|
353
|
+
.cg-action[data-emphasis="primary"]:hover,
|
|
354
|
+
.cg-widget__cta-action:hover {
|
|
355
|
+
background: var(--cr-action-hover);
|
|
356
|
+
border-color: var(--cr-action-hover);
|
|
357
|
+
color: var(--cr-action-hover-fg);
|
|
295
358
|
}
|
|
296
359
|
|
|
297
|
-
.
|
|
298
|
-
|
|
360
|
+
/* A text link with an arrow after it. Not a flex container: in one, the
|
|
361
|
+
words and the arrow are two flex items and each gets its own underline.
|
|
362
|
+
As inline content the words carry one continuous underline, and the
|
|
363
|
+
arrow, an inline-block, inherits none (CSS Text Decoration: decorations do
|
|
364
|
+
not propagate to atomic inlines). The same rule draws every arrow link of
|
|
365
|
+
the theme, so a lone arrow cannot exist anywhere. */
|
|
366
|
+
.cg-action[data-emphasis="secondary"],
|
|
367
|
+
.cr-arrow-link {
|
|
368
|
+
display: inline-block;
|
|
369
|
+
color: var(--cr-ink);
|
|
370
|
+
text-decoration-line: underline;
|
|
371
|
+
text-decoration-thickness: var(--cr-rule);
|
|
372
|
+
text-decoration-color: var(--cr-line-strong);
|
|
373
|
+
text-decoration-skip-ink: auto;
|
|
374
|
+
text-underline-offset: 0.3em;
|
|
375
|
+
}
|
|
376
|
+
|
|
377
|
+
.cg-action[data-emphasis="secondary"] {
|
|
378
|
+
padding-block: var(--cr-s3);
|
|
379
|
+
}
|
|
380
|
+
|
|
381
|
+
.cg-action[data-emphasis="secondary"]::after,
|
|
382
|
+
.cr-arrow-link::after {
|
|
383
|
+
content: "\2192" / "";
|
|
384
|
+
display: inline-block;
|
|
385
|
+
margin-inline-start: 0.4em;
|
|
386
|
+
}
|
|
387
|
+
|
|
388
|
+
.cr-arrow-link[data-direction="back"]::after {
|
|
389
|
+
content: none;
|
|
390
|
+
}
|
|
391
|
+
|
|
392
|
+
.cr-arrow-link[data-direction="back"]::before {
|
|
393
|
+
content: "\2190" / "";
|
|
394
|
+
display: inline-block;
|
|
395
|
+
margin-inline-end: 0.4em;
|
|
396
|
+
}
|
|
397
|
+
|
|
398
|
+
.cg-action[data-emphasis="secondary"]:hover,
|
|
399
|
+
.cr-arrow-link:hover {
|
|
400
|
+
color: var(--cr-ink);
|
|
401
|
+
text-decoration-color: currentColor;
|
|
299
402
|
}
|
|
300
403
|
|
|
301
404
|
/* --------------------------------------------------------------------------
|
|
302
|
-
|
|
405
|
+
Header: one quiet row under a hairline. Not held at the top of the window:
|
|
406
|
+
the photograph of the room below it deserves the whole screen once the
|
|
407
|
+
visitor starts to scroll.
|
|
303
408
|
-------------------------------------------------------------------------- */
|
|
304
409
|
|
|
305
|
-
.
|
|
306
|
-
position:
|
|
307
|
-
|
|
308
|
-
|
|
309
|
-
|
|
310
|
-
/* Flat and fully opaque, not a frosted-glass blur: a sticky header reads
|
|
311
|
-
as a solid plane sitting above the page, with a hairline marking where
|
|
312
|
-
it ends. */
|
|
313
|
-
background: var(--cg-canvas);
|
|
314
|
-
border-block-end: 1px solid var(--cg-line-soft);
|
|
410
|
+
.cr-header {
|
|
411
|
+
position: relative;
|
|
412
|
+
z-index: 30;
|
|
413
|
+
border-block-end: var(--cr-rule) solid var(--cr-line);
|
|
414
|
+
background: var(--cr-canvas);
|
|
315
415
|
}
|
|
316
416
|
|
|
317
|
-
.
|
|
417
|
+
.cr-header__inner {
|
|
318
418
|
display: flex;
|
|
319
419
|
align-items: center;
|
|
320
|
-
gap: var(--
|
|
321
|
-
|
|
420
|
+
gap: var(--cr-s2) var(--cr-s8);
|
|
421
|
+
min-block-size: var(--cr-header-height);
|
|
422
|
+
max-inline-size: calc(var(--cr-page) + var(--cr-gutter) * 2);
|
|
322
423
|
margin-inline: auto;
|
|
424
|
+
padding-inline: var(--cr-gutter);
|
|
323
425
|
}
|
|
324
426
|
|
|
325
|
-
.
|
|
326
|
-
|
|
327
|
-
|
|
328
|
-
|
|
329
|
-
|
|
330
|
-
|
|
427
|
+
.cr-header__brand {
|
|
428
|
+
display: inline-flex;
|
|
429
|
+
flex: 1 1 auto;
|
|
430
|
+
align-items: center;
|
|
431
|
+
min-block-size: 44px;
|
|
432
|
+
min-inline-size: 0;
|
|
433
|
+
color: var(--cr-ink);
|
|
331
434
|
text-decoration: none;
|
|
332
|
-
margin-inline-end: auto;
|
|
333
435
|
}
|
|
334
436
|
|
|
335
|
-
.
|
|
437
|
+
.cr-header__wordmark {
|
|
438
|
+
overflow: hidden;
|
|
439
|
+
font-family: var(--cr-font-display);
|
|
440
|
+
font-size: var(--cr-size-wordmark);
|
|
441
|
+
font-weight: var(--cr-weight-medium);
|
|
442
|
+
line-height: 1;
|
|
443
|
+
letter-spacing: 0.005em;
|
|
444
|
+
text-overflow: ellipsis;
|
|
445
|
+
white-space: nowrap;
|
|
446
|
+
}
|
|
447
|
+
|
|
448
|
+
.cr-header__logo {
|
|
336
449
|
display: block;
|
|
337
|
-
block-size:
|
|
450
|
+
block-size: 2rem;
|
|
338
451
|
inline-size: auto;
|
|
339
|
-
max-inline-size:
|
|
452
|
+
max-inline-size: min(13rem, 46vw);
|
|
340
453
|
object-fit: contain;
|
|
454
|
+
filter: none;
|
|
341
455
|
}
|
|
342
456
|
|
|
343
|
-
.
|
|
344
|
-
display: none;
|
|
345
|
-
}
|
|
346
|
-
|
|
347
|
-
@media (min-width: 56rem) {
|
|
348
|
-
.cg-nav {
|
|
349
|
-
display: flex;
|
|
350
|
-
align-items: center;
|
|
351
|
-
}
|
|
352
|
-
}
|
|
353
|
-
|
|
354
|
-
.cg-nav__items {
|
|
457
|
+
.cr-header__links {
|
|
355
458
|
display: flex;
|
|
356
459
|
flex-wrap: wrap;
|
|
357
|
-
|
|
358
|
-
gap: var(--cg-s6);
|
|
460
|
+
gap: 0 var(--cr-s8);
|
|
359
461
|
margin: 0;
|
|
360
462
|
padding: 0;
|
|
361
463
|
list-style: none;
|
|
362
|
-
font-size: var(--cg-text-sm);
|
|
363
|
-
letter-spacing: var(--cg-tracking-wide);
|
|
364
|
-
text-transform: uppercase;
|
|
365
464
|
}
|
|
366
465
|
|
|
367
|
-
.
|
|
368
|
-
.
|
|
369
|
-
|
|
370
|
-
|
|
466
|
+
.cr-header__item a,
|
|
467
|
+
.cr-header__item span {
|
|
468
|
+
display: inline-flex;
|
|
469
|
+
align-items: center;
|
|
470
|
+
min-block-size: 44px;
|
|
471
|
+
color: var(--cr-ink);
|
|
472
|
+
font-size: var(--cr-text-md);
|
|
473
|
+
text-decoration-line: underline;
|
|
474
|
+
text-decoration-thickness: var(--cr-rule);
|
|
475
|
+
text-decoration-color: transparent;
|
|
476
|
+
text-underline-offset: 0.42em;
|
|
371
477
|
}
|
|
372
478
|
|
|
373
|
-
.
|
|
374
|
-
color:
|
|
479
|
+
.cr-header__item a:hover {
|
|
480
|
+
text-decoration-color: currentColor;
|
|
375
481
|
}
|
|
376
482
|
|
|
377
|
-
.
|
|
378
|
-
|
|
379
|
-
|
|
483
|
+
/* The one action of the header: the words, underlined, after a hairline. */
|
|
484
|
+
.cr-header__action {
|
|
485
|
+
display: inline-flex;
|
|
486
|
+
flex: none;
|
|
487
|
+
align-items: center;
|
|
488
|
+
min-block-size: 44px;
|
|
489
|
+
color: var(--cr-ink);
|
|
490
|
+
font-size: var(--cr-text-md);
|
|
491
|
+
font-weight: var(--cr-weight-medium);
|
|
492
|
+
text-decoration-line: underline;
|
|
493
|
+
text-decoration-thickness: var(--cr-rule);
|
|
494
|
+
text-decoration-color: var(--cr-line-ink);
|
|
495
|
+
text-underline-offset: 0.42em;
|
|
496
|
+
white-space: nowrap;
|
|
380
497
|
}
|
|
381
498
|
|
|
382
|
-
|
|
383
|
-
|
|
384
|
-
display: inline-flex;
|
|
385
|
-
}
|
|
499
|
+
.cr-header__action:hover {
|
|
500
|
+
text-decoration-color: var(--cr-brass);
|
|
386
501
|
}
|
|
387
502
|
|
|
388
|
-
/* The manual light/dark/system toggle (L26) — a plain circular icon button in
|
|
389
|
-
the header's own register, the same 2.25rem footprint and hairline border
|
|
390
|
-
as the footer's social icons, never a filled control (this theme has none
|
|
391
|
-
in its header). Icon visibility (sun/moon) is swapped by CSS alone, from
|
|
392
|
-
the same `[data-theme]`/`prefers-color-scheme` signals `tokens.css` already
|
|
393
|
-
keys the whole palette on — see `theme-canonical`'s identical comment. */
|
|
394
503
|
.cg-theme-toggle {
|
|
395
504
|
display: inline-flex;
|
|
505
|
+
flex: none;
|
|
396
506
|
align-items: center;
|
|
397
507
|
justify-content: center;
|
|
398
|
-
|
|
399
|
-
inline-
|
|
400
|
-
|
|
401
|
-
border:
|
|
402
|
-
border-radius: 50%;
|
|
508
|
+
inline-size: 2.75rem;
|
|
509
|
+
margin-inline-end: calc(var(--cr-s3) * -1);
|
|
510
|
+
padding: 0;
|
|
511
|
+
border: 0;
|
|
403
512
|
background: transparent;
|
|
404
|
-
color: var(--
|
|
513
|
+
color: var(--cr-ink);
|
|
405
514
|
cursor: pointer;
|
|
406
|
-
transition:
|
|
515
|
+
transition: color var(--cr-duration) var(--cr-ease);
|
|
407
516
|
}
|
|
408
517
|
|
|
409
518
|
.cg-theme-toggle:hover {
|
|
410
|
-
|
|
411
|
-
color: var(--cg-accent);
|
|
519
|
+
color: var(--cr-ink-muted);
|
|
412
520
|
}
|
|
413
521
|
|
|
414
522
|
.cg-theme-toggle__icon {
|
|
415
|
-
inline-size: 1.
|
|
416
|
-
block-size: 1.
|
|
523
|
+
inline-size: 1.05rem;
|
|
524
|
+
block-size: 1.05rem;
|
|
417
525
|
}
|
|
418
526
|
|
|
419
527
|
.cg-theme-toggle__icon--moon {
|
|
@@ -421,449 +529,553 @@ img {
|
|
|
421
529
|
}
|
|
422
530
|
|
|
423
531
|
@media (prefers-color-scheme: dark) {
|
|
424
|
-
:where(:root:not([data-theme=
|
|
532
|
+
:where(:root:not([data-theme="light"])) .cg-theme-toggle__icon--sun {
|
|
425
533
|
display: none;
|
|
426
534
|
}
|
|
427
535
|
|
|
428
|
-
:where(:root:not([data-theme=
|
|
536
|
+
:where(:root:not([data-theme="light"])) .cg-theme-toggle__icon--moon {
|
|
429
537
|
display: block;
|
|
430
538
|
}
|
|
431
539
|
}
|
|
432
540
|
|
|
433
|
-
:where(:root[data-theme=
|
|
541
|
+
:where(:root[data-theme="dark"]) .cg-theme-toggle__icon--sun {
|
|
434
542
|
display: none;
|
|
435
543
|
}
|
|
436
544
|
|
|
437
|
-
:where(:root[data-theme=
|
|
545
|
+
:where(:root[data-theme="dark"]) .cg-theme-toggle__icon--moon {
|
|
438
546
|
display: block;
|
|
439
547
|
}
|
|
440
548
|
|
|
441
|
-
|
|
442
|
-
|
|
443
|
-
|
|
444
|
-
|
|
445
|
-
|
|
446
|
-
|
|
447
|
-
|
|
448
|
-
}
|
|
449
|
-
|
|
450
|
-
@media (min-width: 56rem) {
|
|
451
|
-
.cg-mobile-nav {
|
|
452
|
-
display: none;
|
|
453
|
-
}
|
|
549
|
+
.cr-nav-toggle-input {
|
|
550
|
+
position: absolute;
|
|
551
|
+
inline-size: 1px;
|
|
552
|
+
block-size: 1px;
|
|
553
|
+
overflow: hidden;
|
|
554
|
+
clip-path: inset(50%);
|
|
555
|
+
white-space: nowrap;
|
|
454
556
|
}
|
|
455
557
|
|
|
456
|
-
.
|
|
457
|
-
display:
|
|
458
|
-
|
|
558
|
+
.cr-nav-toggle-label {
|
|
559
|
+
display: flex;
|
|
560
|
+
flex: none;
|
|
561
|
+
flex-direction: column;
|
|
459
562
|
justify-content: center;
|
|
563
|
+
gap: 0.45rem;
|
|
564
|
+
order: 4;
|
|
565
|
+
inline-size: 2.75rem;
|
|
566
|
+
margin-inline-end: calc(var(--cr-s2) * -1);
|
|
567
|
+
padding: 0.7rem 0.5rem;
|
|
460
568
|
cursor: pointer;
|
|
461
|
-
color: var(--cg-ink);
|
|
462
|
-
list-style: none;
|
|
463
569
|
}
|
|
464
570
|
|
|
465
|
-
.
|
|
466
|
-
|
|
571
|
+
.cr-nav-toggle-input:focus-visible ~ .cr-nav-toggle-label {
|
|
572
|
+
outline: var(--cr-rule-strong) solid var(--cr-brass);
|
|
573
|
+
outline-offset: 2px;
|
|
467
574
|
}
|
|
468
575
|
|
|
469
|
-
.
|
|
470
|
-
|
|
471
|
-
|
|
576
|
+
.cr-nav-toggle-bar {
|
|
577
|
+
display: block;
|
|
578
|
+
inline-size: 100%;
|
|
579
|
+
block-size: 1.5px;
|
|
580
|
+
background: var(--cr-ink);
|
|
472
581
|
}
|
|
473
582
|
|
|
474
|
-
.
|
|
475
|
-
|
|
476
|
-
|
|
477
|
-
inset-block-start: calc(100% + var(--cg-s3));
|
|
478
|
-
z-index: 30;
|
|
479
|
-
min-inline-size: 14rem;
|
|
480
|
-
padding: var(--cg-s4);
|
|
481
|
-
background: var(--cg-surface);
|
|
482
|
-
box-shadow: var(--cogenta-shadow-md), var(--cg-ring);
|
|
483
|
-
border-radius: var(--cg-radius-md);
|
|
583
|
+
/* Open: the two bars cross. A state, drawn at once; nothing is animated. */
|
|
584
|
+
.cr-nav-toggle-input:checked ~ .cr-nav-toggle-label {
|
|
585
|
+
gap: 0;
|
|
484
586
|
}
|
|
485
587
|
|
|
486
|
-
.
|
|
487
|
-
|
|
488
|
-
flex-direction: column;
|
|
489
|
-
gap: var(--cg-s4);
|
|
490
|
-
margin: 0;
|
|
491
|
-
padding: 0;
|
|
492
|
-
list-style: none;
|
|
493
|
-
font-size: var(--cg-text-sm);
|
|
494
|
-
letter-spacing: var(--cg-tracking-wide);
|
|
495
|
-
text-transform: uppercase;
|
|
588
|
+
.cr-nav-toggle-input:checked ~ .cr-nav-toggle-label .cr-nav-toggle-bar:first-child {
|
|
589
|
+
transform: translateY(0.75px) rotate(45deg);
|
|
496
590
|
}
|
|
497
591
|
|
|
498
|
-
.
|
|
499
|
-
.
|
|
500
|
-
color: var(--cg-ink);
|
|
501
|
-
text-decoration: none;
|
|
592
|
+
.cr-nav-toggle-input:checked ~ .cr-nav-toggle-label .cr-nav-toggle-bar:last-child {
|
|
593
|
+
transform: translateY(-0.75px) rotate(-45deg);
|
|
502
594
|
}
|
|
503
595
|
|
|
504
|
-
|
|
505
|
-
|
|
506
|
-
|
|
596
|
+
/* Below the wide breakpoint the pages are a panel of large serif links under
|
|
597
|
+
the header, down to the bottom of the screen; the reservation link and the
|
|
598
|
+
light/dark control stay in the header row. */
|
|
599
|
+
@media (max-width: 63.99rem) {
|
|
600
|
+
.cr-header__inner {
|
|
601
|
+
gap: var(--cr-s2) var(--cr-s4);
|
|
602
|
+
}
|
|
507
603
|
|
|
508
|
-
|
|
509
|
-
|
|
510
|
-
|
|
604
|
+
.cr-header__action {
|
|
605
|
+
order: 2;
|
|
606
|
+
}
|
|
511
607
|
|
|
512
|
-
.cg-
|
|
513
|
-
|
|
514
|
-
|
|
515
|
-
|
|
516
|
-
|
|
517
|
-
|
|
608
|
+
.cg-theme-toggle {
|
|
609
|
+
order: 3;
|
|
610
|
+
margin-inline-end: 0;
|
|
611
|
+
}
|
|
612
|
+
|
|
613
|
+
.cr-header__nav {
|
|
614
|
+
display: none;
|
|
615
|
+
position: absolute;
|
|
616
|
+
inset-inline: 0;
|
|
617
|
+
inset-block-start: 100%;
|
|
618
|
+
z-index: 29;
|
|
619
|
+
min-block-size: calc(100svh - var(--cr-header-height));
|
|
620
|
+
overflow-y: auto;
|
|
621
|
+
padding: var(--cr-s4) var(--cr-gutter) var(--cr-s12);
|
|
622
|
+
border-block-start: var(--cr-rule) solid var(--cr-line);
|
|
623
|
+
background: var(--cr-canvas);
|
|
624
|
+
}
|
|
625
|
+
|
|
626
|
+
.cr-nav-toggle-input:checked ~ .cr-header__nav {
|
|
627
|
+
display: block;
|
|
628
|
+
}
|
|
629
|
+
|
|
630
|
+
.cr-header__links {
|
|
631
|
+
display: block;
|
|
632
|
+
}
|
|
633
|
+
|
|
634
|
+
.cr-header__item {
|
|
635
|
+
border-block-end: var(--cr-rule) solid var(--cr-line);
|
|
636
|
+
}
|
|
637
|
+
|
|
638
|
+
.cr-header__item a,
|
|
639
|
+
.cr-header__item span {
|
|
640
|
+
display: flex;
|
|
641
|
+
min-block-size: 0;
|
|
642
|
+
padding-block: var(--cr-s4);
|
|
643
|
+
font-family: var(--cr-font-display);
|
|
644
|
+
font-size: var(--cr-size-nav);
|
|
645
|
+
font-weight: var(--cr-weight-light);
|
|
646
|
+
line-height: var(--cr-leading-heading);
|
|
647
|
+
letter-spacing: var(--cr-tracking-display);
|
|
648
|
+
}
|
|
649
|
+
|
|
650
|
+
.cr-header__card {
|
|
651
|
+
margin-block-start: var(--cr-s10);
|
|
652
|
+
}
|
|
653
|
+
|
|
654
|
+
.cr-header__card p {
|
|
655
|
+
margin: 0;
|
|
656
|
+
color: var(--cr-ink);
|
|
657
|
+
font-size: var(--cr-text-md);
|
|
658
|
+
line-height: 1.55;
|
|
659
|
+
}
|
|
660
|
+
|
|
661
|
+
.cr-header__card p + p {
|
|
662
|
+
margin-block-start: var(--cr-s4);
|
|
663
|
+
color: var(--cr-ink-muted);
|
|
664
|
+
font-size: var(--cr-text-caption);
|
|
665
|
+
}
|
|
518
666
|
}
|
|
519
667
|
|
|
520
|
-
|
|
521
|
-
|
|
522
|
-
|
|
523
|
-
|
|
524
|
-
max-inline-size: var(--cg-page);
|
|
525
|
-
margin-inline: auto;
|
|
526
|
-
padding-block-end: var(--cg-s10);
|
|
527
|
-
border-block-end: 1px solid var(--cg-line-soft);
|
|
668
|
+
@media (max-width: 26rem) {
|
|
669
|
+
.cr-header__action {
|
|
670
|
+
font-size: var(--cr-text-caption);
|
|
671
|
+
}
|
|
528
672
|
}
|
|
529
673
|
|
|
530
|
-
@media (min-width:
|
|
531
|
-
.
|
|
532
|
-
|
|
533
|
-
|
|
674
|
+
@media (min-width: 64rem) {
|
|
675
|
+
.cr-nav-toggle-label,
|
|
676
|
+
.cr-header__card {
|
|
677
|
+
display: none;
|
|
678
|
+
}
|
|
679
|
+
|
|
680
|
+
.cr-header__nav {
|
|
681
|
+
order: 1;
|
|
682
|
+
}
|
|
683
|
+
|
|
684
|
+
.cr-header__action {
|
|
685
|
+
order: 2;
|
|
686
|
+
padding-inline-start: var(--cr-s8);
|
|
687
|
+
border-inline-start: var(--cr-rule) solid var(--cr-line);
|
|
688
|
+
}
|
|
689
|
+
|
|
690
|
+
.cg-theme-toggle {
|
|
691
|
+
order: 3;
|
|
534
692
|
}
|
|
535
693
|
}
|
|
536
694
|
|
|
537
|
-
|
|
538
|
-
|
|
539
|
-
|
|
540
|
-
|
|
541
|
-
|
|
542
|
-
|
|
543
|
-
|
|
544
|
-
|
|
695
|
+
/* --------------------------------------------------------------------------
|
|
696
|
+
Footer: a charcoal band. The name, the address card, the pages, the
|
|
697
|
+
profiles, and the legal line.
|
|
698
|
+
-------------------------------------------------------------------------- */
|
|
699
|
+
|
|
700
|
+
.cr-footer {
|
|
701
|
+
padding-block: var(--cr-s20) var(--cr-s10);
|
|
702
|
+
background: var(--cr-footer);
|
|
703
|
+
color: var(--cr-footer-ink);
|
|
704
|
+
font-size: var(--cr-text-caption);
|
|
705
|
+
line-height: var(--cr-leading-ui);
|
|
545
706
|
}
|
|
546
707
|
|
|
547
|
-
.
|
|
548
|
-
|
|
708
|
+
.cr-footer__inner {
|
|
709
|
+
display: grid;
|
|
710
|
+
grid-template-columns: repeat(var(--cr-columns), minmax(0, 1fr));
|
|
711
|
+
column-gap: var(--cr-col-gap);
|
|
712
|
+
row-gap: var(--cr-s12);
|
|
713
|
+
max-inline-size: calc(var(--cr-page) + var(--cr-gutter) * 2);
|
|
714
|
+
margin-inline: auto;
|
|
715
|
+
padding-inline: var(--cr-gutter);
|
|
549
716
|
}
|
|
550
717
|
|
|
551
|
-
.
|
|
552
|
-
|
|
553
|
-
|
|
554
|
-
margin: 0;
|
|
555
|
-
padding: 0;
|
|
556
|
-
list-style: none;
|
|
718
|
+
.cr-footer__inner > * {
|
|
719
|
+
grid-column: 1 / -1;
|
|
720
|
+
min-inline-size: 0;
|
|
557
721
|
}
|
|
558
722
|
|
|
559
|
-
.
|
|
560
|
-
|
|
561
|
-
|
|
562
|
-
justify-content: center;
|
|
563
|
-
inline-size: 2.25rem;
|
|
564
|
-
block-size: 2.25rem;
|
|
565
|
-
border-radius: 50%;
|
|
566
|
-
box-shadow: var(--cg-ring);
|
|
567
|
-
color: var(--cg-ink-muted);
|
|
723
|
+
.cr-footer :where(a) {
|
|
724
|
+
color: var(--cr-footer-ink);
|
|
725
|
+
text-decoration-color: var(--cr-footer-line);
|
|
568
726
|
}
|
|
569
727
|
|
|
570
|
-
.
|
|
571
|
-
color:
|
|
572
|
-
box-shadow: var(--cg-ring-accent);
|
|
728
|
+
.cr-footer :where(a:hover) {
|
|
729
|
+
text-decoration-color: currentColor;
|
|
573
730
|
}
|
|
574
731
|
|
|
575
|
-
.
|
|
576
|
-
inline-
|
|
577
|
-
|
|
732
|
+
.cr-footer__name {
|
|
733
|
+
display: inline-block;
|
|
734
|
+
color: var(--cr-footer-ink);
|
|
735
|
+
font-family: var(--cr-font-display);
|
|
736
|
+
font-size: var(--cr-text-3xl);
|
|
737
|
+
font-weight: var(--cr-weight-light);
|
|
738
|
+
line-height: 1.05;
|
|
739
|
+
letter-spacing: var(--cr-tracking-display);
|
|
740
|
+
text-decoration: none;
|
|
578
741
|
}
|
|
579
742
|
|
|
580
|
-
.
|
|
581
|
-
|
|
582
|
-
inline-size:
|
|
583
|
-
|
|
584
|
-
|
|
585
|
-
|
|
586
|
-
|
|
743
|
+
.cr-footer__tagline {
|
|
744
|
+
margin: var(--cr-s3) 0 0;
|
|
745
|
+
max-inline-size: 30ch;
|
|
746
|
+
color: var(--cr-footer-muted);
|
|
747
|
+
font-family: var(--cr-font-display);
|
|
748
|
+
font-size: var(--cr-text-lg);
|
|
749
|
+
font-style: italic;
|
|
750
|
+
line-height: var(--cr-leading-lead);
|
|
587
751
|
}
|
|
588
752
|
|
|
589
|
-
.
|
|
590
|
-
|
|
591
|
-
|
|
592
|
-
|
|
593
|
-
|
|
594
|
-
|
|
753
|
+
.cr-footer__note p {
|
|
754
|
+
margin: 0;
|
|
755
|
+
max-inline-size: 36ch;
|
|
756
|
+
color: var(--cr-footer-ink);
|
|
757
|
+
font-size: var(--cr-text-md);
|
|
758
|
+
line-height: 1.55;
|
|
595
759
|
}
|
|
596
760
|
|
|
597
|
-
.
|
|
598
|
-
|
|
761
|
+
.cr-footer__note p + p {
|
|
762
|
+
margin-block-start: var(--cr-s4);
|
|
763
|
+
color: var(--cr-footer-muted);
|
|
764
|
+
font-size: var(--cr-text-caption);
|
|
599
765
|
}
|
|
600
766
|
|
|
601
|
-
.
|
|
602
|
-
|
|
603
|
-
|
|
604
|
-
|
|
605
|
-
|
|
606
|
-
|
|
607
|
-
|
|
608
|
-
margin-inline: auto;
|
|
609
|
-
padding-block-start: var(--cg-s6);
|
|
610
|
-
font-size: var(--cg-text-xs);
|
|
611
|
-
letter-spacing: var(--cg-tracking-wide);
|
|
612
|
-
text-transform: uppercase;
|
|
613
|
-
color: var(--cg-ink-subtle);
|
|
767
|
+
.cr-footer__links,
|
|
768
|
+
.cr-footer__social {
|
|
769
|
+
display: grid;
|
|
770
|
+
gap: var(--cr-s1);
|
|
771
|
+
margin: 0;
|
|
772
|
+
padding: 0;
|
|
773
|
+
list-style: none;
|
|
614
774
|
}
|
|
615
775
|
|
|
616
|
-
.
|
|
617
|
-
|
|
776
|
+
.cr-footer__item a,
|
|
777
|
+
.cr-footer__item span,
|
|
778
|
+
.cr-footer__social-item a {
|
|
779
|
+
display: inline-flex;
|
|
618
780
|
align-items: center;
|
|
619
|
-
gap:
|
|
620
|
-
|
|
621
|
-
|
|
781
|
+
gap: var(--cr-s2);
|
|
782
|
+
min-block-size: 2rem;
|
|
783
|
+
color: var(--cr-footer-ink);
|
|
784
|
+
font-size: var(--cr-text-md);
|
|
785
|
+
text-decoration-line: underline;
|
|
786
|
+
text-decoration-color: transparent;
|
|
787
|
+
text-underline-offset: 0.3em;
|
|
622
788
|
}
|
|
623
789
|
|
|
624
|
-
.
|
|
625
|
-
|
|
626
|
-
|
|
627
|
-
gap: 0.4em;
|
|
790
|
+
.cr-footer__item a:hover,
|
|
791
|
+
.cr-footer__social-item a:hover {
|
|
792
|
+
text-decoration-color: currentColor;
|
|
628
793
|
}
|
|
629
794
|
|
|
630
|
-
|
|
631
|
-
|
|
632
|
-
|
|
795
|
+
/* The social profiles keep their names: a row of icons alone asks a guest to
|
|
796
|
+
recognise every logo, and a restaurant's footer has room for the words. */
|
|
797
|
+
.cr-footer__social .cg-visually-hidden {
|
|
798
|
+
position: static;
|
|
799
|
+
inline-size: auto;
|
|
800
|
+
block-size: auto;
|
|
801
|
+
margin: 0;
|
|
802
|
+
overflow: visible;
|
|
803
|
+
clip-path: none;
|
|
804
|
+
white-space: normal;
|
|
633
805
|
}
|
|
634
806
|
|
|
635
|
-
|
|
636
|
-
|
|
637
|
-
|
|
807
|
+
.cg-social__icon {
|
|
808
|
+
inline-size: 1rem;
|
|
809
|
+
block-size: 1rem;
|
|
810
|
+
flex: none;
|
|
811
|
+
}
|
|
638
812
|
|
|
639
|
-
.
|
|
813
|
+
.cr-footer__legal {
|
|
640
814
|
display: flex;
|
|
641
815
|
flex-wrap: wrap;
|
|
642
|
-
|
|
643
|
-
|
|
644
|
-
|
|
645
|
-
|
|
816
|
+
align-items: center;
|
|
817
|
+
justify-content: space-between;
|
|
818
|
+
gap: var(--cr-s3) var(--cr-s8);
|
|
819
|
+
padding-block-start: var(--cr-s6);
|
|
820
|
+
border-block-start: var(--cr-rule) solid var(--cr-footer-line);
|
|
821
|
+
color: var(--cr-footer-muted);
|
|
822
|
+
font-size: var(--cr-text-sm);
|
|
823
|
+
}
|
|
824
|
+
|
|
825
|
+
.cr-footer__copyright {
|
|
826
|
+
margin: 0;
|
|
827
|
+
font-variant-numeric: lining-nums tabular-nums;
|
|
646
828
|
}
|
|
647
829
|
|
|
648
|
-
.
|
|
830
|
+
.cr-footer__branding a {
|
|
649
831
|
display: inline-flex;
|
|
650
832
|
align-items: center;
|
|
651
|
-
|
|
652
|
-
|
|
653
|
-
padding: var(--cg-s3) var(--cg-s6);
|
|
654
|
-
border: 1px solid transparent;
|
|
655
|
-
border-radius: var(--cg-radius-sm);
|
|
656
|
-
font-size: var(--cg-text-sm);
|
|
657
|
-
font-weight: var(--cg-weight-medium);
|
|
658
|
-
letter-spacing: var(--cg-tracking-wide);
|
|
659
|
-
text-transform: uppercase;
|
|
660
|
-
line-height: var(--cg-leading-snug);
|
|
833
|
+
gap: 0.5em;
|
|
834
|
+
color: var(--cr-footer-muted);
|
|
661
835
|
text-decoration: none;
|
|
662
|
-
white-space: nowrap;
|
|
663
|
-
transition:
|
|
664
|
-
background-color var(--cg-duration) var(--cg-ease),
|
|
665
|
-
color var(--cg-duration) var(--cg-ease),
|
|
666
|
-
border-color var(--cg-duration) var(--cg-ease),
|
|
667
|
-
transform var(--cg-duration-fast) var(--cg-ease);
|
|
668
836
|
}
|
|
669
837
|
|
|
670
|
-
.
|
|
671
|
-
|
|
672
|
-
border-color: var(--cg-accent);
|
|
673
|
-
color: var(--cg-accent-fg);
|
|
838
|
+
.cr-footer__branding a:hover {
|
|
839
|
+
color: var(--cr-footer-ink);
|
|
674
840
|
}
|
|
675
841
|
|
|
676
|
-
.cg-
|
|
677
|
-
|
|
678
|
-
|
|
679
|
-
|
|
842
|
+
.cg-site-footer__brand-logo {
|
|
843
|
+
display: block;
|
|
844
|
+
block-size: 18px;
|
|
845
|
+
inline-size: auto;
|
|
680
846
|
}
|
|
681
847
|
|
|
682
|
-
.cg-
|
|
683
|
-
|
|
684
|
-
border-color: var(--cg-line-strong);
|
|
685
|
-
color: var(--cg-ink);
|
|
848
|
+
.cg-site-footer__version {
|
|
849
|
+
font-variant-numeric: tabular-nums;
|
|
686
850
|
}
|
|
687
851
|
|
|
688
|
-
.
|
|
689
|
-
|
|
690
|
-
|
|
852
|
+
.cr-footer__nav,
|
|
853
|
+
.cr-footer__follow {
|
|
854
|
+
grid-column: span 6;
|
|
691
855
|
}
|
|
692
856
|
|
|
693
|
-
|
|
694
|
-
|
|
857
|
+
@media (min-width: 40rem) {
|
|
858
|
+
.cr-footer__about,
|
|
859
|
+
.cr-footer__note {
|
|
860
|
+
grid-column: span 6;
|
|
861
|
+
}
|
|
695
862
|
}
|
|
696
863
|
|
|
697
|
-
|
|
698
|
-
|
|
699
|
-
|
|
700
|
-
|
|
701
|
-
-------------------------------------------------------------------------- */
|
|
864
|
+
@media (min-width: 64rem) {
|
|
865
|
+
.cr-footer__about {
|
|
866
|
+
grid-column: 1 / span 4;
|
|
867
|
+
}
|
|
702
868
|
|
|
703
|
-
.
|
|
704
|
-
|
|
705
|
-
|
|
706
|
-
.cg-figures__title,
|
|
707
|
-
.cg-press__title,
|
|
708
|
-
.cg-set-menu__title,
|
|
709
|
-
.cg-tallies__title,
|
|
710
|
-
.cg-hours__title,
|
|
711
|
-
.cg-menu__title {
|
|
712
|
-
margin: 0 0 var(--cg-s10);
|
|
713
|
-
font-size: var(--cg-text-2xl);
|
|
714
|
-
text-align: center;
|
|
715
|
-
}
|
|
869
|
+
.cr-footer__note {
|
|
870
|
+
grid-column: 5 / span 4;
|
|
871
|
+
}
|
|
716
872
|
|
|
717
|
-
.
|
|
718
|
-
|
|
719
|
-
|
|
720
|
-
|
|
721
|
-
.
|
|
722
|
-
|
|
723
|
-
|
|
724
|
-
.cg-menu__dishes {
|
|
725
|
-
margin: 0;
|
|
726
|
-
padding: 0;
|
|
727
|
-
list-style: none;
|
|
728
|
-
}
|
|
873
|
+
.cr-footer__nav {
|
|
874
|
+
grid-column: 9 / span 2;
|
|
875
|
+
}
|
|
876
|
+
|
|
877
|
+
.cr-footer__follow {
|
|
878
|
+
grid-column: 11 / span 2;
|
|
879
|
+
}
|
|
729
880
|
|
|
730
|
-
.
|
|
731
|
-
|
|
732
|
-
|
|
733
|
-
scroll-snap-type: x mandatory;
|
|
734
|
-
scroll-behavior: smooth;
|
|
735
|
-
overscroll-behavior-inline: contain;
|
|
736
|
-
scrollbar-width: thin;
|
|
737
|
-
scrollbar-color: var(--cg-line-strong) transparent;
|
|
738
|
-
padding-block: var(--cg-s2);
|
|
739
|
-
margin-block: calc(var(--cg-s2) * -1);
|
|
881
|
+
.cr-footer__legal {
|
|
882
|
+
grid-column: 1 / -1;
|
|
883
|
+
}
|
|
740
884
|
}
|
|
741
885
|
|
|
742
886
|
/* --------------------------------------------------------------------------
|
|
743
|
-
Search, forms
|
|
744
|
-
|
|
745
|
-
seventeen blocks.
|
|
887
|
+
Search, forms and comments: the utility pages the host renders, in the
|
|
888
|
+
same register. The host sets them in a bare `<main class="cg-main">`.
|
|
746
889
|
-------------------------------------------------------------------------- */
|
|
747
890
|
|
|
891
|
+
:is(.cg-main, .cg-sidebar-layout__content) > .cg-page__title,
|
|
748
892
|
.cg-search__form,
|
|
749
893
|
.cg-search__results,
|
|
750
894
|
.cg-search__empty,
|
|
751
895
|
.cg-search__error,
|
|
752
896
|
.cg-form,
|
|
753
|
-
.cg-form__confirmation
|
|
754
|
-
|
|
755
|
-
max-inline-size: var(--
|
|
897
|
+
.cg-form__confirmation {
|
|
898
|
+
inline-size: 100%;
|
|
899
|
+
max-inline-size: calc(var(--cr-page) + var(--cr-gutter) * 2);
|
|
756
900
|
margin-inline: auto;
|
|
757
|
-
padding-inline: var(--
|
|
901
|
+
padding-inline: var(--cr-gutter);
|
|
902
|
+
}
|
|
903
|
+
|
|
904
|
+
:is(.cg-main, .cg-sidebar-layout__content) > .cg-page__title {
|
|
905
|
+
padding-block: calc(var(--cr-section) * 0.5) var(--cr-s8);
|
|
906
|
+
font-size: var(--cr-size-title);
|
|
907
|
+
font-weight: var(--cr-weight-light);
|
|
908
|
+
line-height: var(--cr-leading-display);
|
|
909
|
+
letter-spacing: var(--cr-tracking-display);
|
|
910
|
+
}
|
|
911
|
+
|
|
912
|
+
.cg-search__form > *,
|
|
913
|
+
.cg-form > * {
|
|
914
|
+
max-inline-size: 44rem;
|
|
758
915
|
}
|
|
759
916
|
|
|
760
917
|
.cg-search__form {
|
|
761
918
|
display: flex;
|
|
762
919
|
flex-wrap: wrap;
|
|
763
920
|
align-items: end;
|
|
764
|
-
gap: var(--
|
|
765
|
-
margin-block
|
|
921
|
+
gap: var(--cr-s3) var(--cr-s4);
|
|
922
|
+
margin-block: 0 var(--cr-s10);
|
|
766
923
|
}
|
|
767
924
|
|
|
768
|
-
.cg-search__form label
|
|
925
|
+
.cg-search__form label,
|
|
926
|
+
.cg-form__field label,
|
|
927
|
+
.cg-comment__form label {
|
|
769
928
|
display: block;
|
|
770
|
-
|
|
771
|
-
|
|
929
|
+
margin-block-end: var(--cr-s2);
|
|
930
|
+
color: var(--cr-ink-muted);
|
|
931
|
+
font-size: var(--cr-text-caption);
|
|
932
|
+
font-weight: var(--cr-weight-medium);
|
|
933
|
+
}
|
|
934
|
+
|
|
935
|
+
.cg-search__form label {
|
|
936
|
+
flex-basis: 100%;
|
|
937
|
+
margin: 0;
|
|
772
938
|
}
|
|
773
939
|
|
|
774
940
|
.cg-search__form input[type="search"] {
|
|
775
|
-
flex: 1 1
|
|
941
|
+
flex: 1 1 18rem;
|
|
776
942
|
}
|
|
777
943
|
|
|
778
944
|
.cg-search__results {
|
|
779
|
-
margin: 0 auto;
|
|
780
|
-
padding-inline-start: var(--cg-gutter);
|
|
781
945
|
display: grid;
|
|
782
|
-
|
|
783
|
-
|
|
946
|
+
margin-block: 0 var(--cr-section);
|
|
947
|
+
list-style: none;
|
|
948
|
+
font-family: var(--cr-font-display);
|
|
949
|
+
font-size: var(--cr-text-xl);
|
|
950
|
+
}
|
|
951
|
+
|
|
952
|
+
.cg-search__results > * {
|
|
953
|
+
padding-block: var(--cr-s5);
|
|
954
|
+
border-block-start: var(--cr-rule) solid var(--cr-line);
|
|
955
|
+
}
|
|
956
|
+
|
|
957
|
+
/* Under a result's name its words are the menu's description, in the text
|
|
958
|
+
face and this theme's muted ink, which follows the evening palette (the
|
|
959
|
+
host's floor reads the skin's daytime grey directly). */
|
|
960
|
+
.cg-search__excerpt,
|
|
961
|
+
.cg-search__meta,
|
|
962
|
+
.cg-search__count {
|
|
963
|
+
color: var(--cr-ink-muted);
|
|
964
|
+
font-family: var(--cr-font-text);
|
|
965
|
+
font-size: var(--cr-text-caption);
|
|
966
|
+
line-height: 1.5;
|
|
967
|
+
}
|
|
968
|
+
|
|
969
|
+
.cg-search__excerpt {
|
|
970
|
+
max-inline-size: 52ch;
|
|
784
971
|
}
|
|
785
972
|
|
|
786
973
|
.cg-search__empty,
|
|
787
974
|
.cg-comments__empty,
|
|
788
|
-
.cg-comments__closed
|
|
789
|
-
|
|
975
|
+
.cg-comments__closed,
|
|
976
|
+
.cg-form__help {
|
|
977
|
+
color: var(--cr-ink-muted);
|
|
790
978
|
}
|
|
791
979
|
|
|
792
980
|
.cg-search__error,
|
|
793
981
|
.cg-form__error,
|
|
794
982
|
.cg-form__field-error {
|
|
795
|
-
color: var(--
|
|
796
|
-
font-weight: var(--
|
|
983
|
+
color: var(--cr-ink);
|
|
984
|
+
font-weight: var(--cr-weight-semibold);
|
|
797
985
|
}
|
|
798
986
|
|
|
987
|
+
/* Fields are a baseline, not a box: a rule under the words, darkening to ink
|
|
988
|
+
on focus. */
|
|
799
989
|
.cg-search__form input,
|
|
800
990
|
.cg-form__field input,
|
|
801
991
|
.cg-form__field select,
|
|
802
992
|
.cg-form__field textarea,
|
|
803
993
|
.cg-comment__form input,
|
|
804
|
-
.cg-comment__form textarea
|
|
994
|
+
.cg-comment__form textarea,
|
|
995
|
+
.cg-widget__search-input,
|
|
996
|
+
.cg-widget__jump select {
|
|
805
997
|
inline-size: 100%;
|
|
806
|
-
|
|
807
|
-
|
|
808
|
-
border
|
|
809
|
-
|
|
810
|
-
|
|
811
|
-
|
|
998
|
+
min-block-size: 44px;
|
|
999
|
+
padding: var(--cr-s2) 0;
|
|
1000
|
+
border: 0;
|
|
1001
|
+
border-block-end: var(--cr-rule) solid var(--cr-line-strong);
|
|
1002
|
+
border-radius: 0;
|
|
1003
|
+
background: transparent;
|
|
1004
|
+
color: var(--cr-ink);
|
|
1005
|
+
font-family: var(--cr-font-text);
|
|
1006
|
+
font-size: var(--cr-text-md);
|
|
1007
|
+
line-height: var(--cr-leading-ui);
|
|
1008
|
+
transition: border-color var(--cr-duration) var(--cr-ease);
|
|
1009
|
+
}
|
|
1010
|
+
|
|
1011
|
+
.cg-form__field textarea,
|
|
1012
|
+
.cg-comment__form textarea {
|
|
1013
|
+
padding: var(--cr-s3);
|
|
1014
|
+
border: var(--cr-rule) solid var(--cr-line-strong);
|
|
1015
|
+
border-radius: var(--cr-radius);
|
|
1016
|
+
resize: vertical;
|
|
1017
|
+
}
|
|
1018
|
+
|
|
1019
|
+
.cg-search__form input:focus-visible,
|
|
1020
|
+
.cg-form__field :is(input, select, textarea):focus-visible,
|
|
1021
|
+
.cg-comment__form :is(input, textarea):focus-visible,
|
|
1022
|
+
.cg-widget__search-input:focus-visible,
|
|
1023
|
+
.cg-widget__jump select:focus-visible {
|
|
1024
|
+
outline: none;
|
|
1025
|
+
border-color: var(--cr-ink);
|
|
1026
|
+
box-shadow: inset 0 calc(var(--cr-rule) * -1) 0 var(--cr-ink);
|
|
812
1027
|
}
|
|
813
1028
|
|
|
814
1029
|
.cg-form__field input[aria-invalid="true"],
|
|
815
1030
|
.cg-form__field select[aria-invalid="true"],
|
|
816
1031
|
.cg-form__field textarea[aria-invalid="true"] {
|
|
817
|
-
border-
|
|
818
|
-
border-
|
|
1032
|
+
border-color: var(--cr-ink);
|
|
1033
|
+
border-block-end-width: var(--cr-rule-strong);
|
|
819
1034
|
}
|
|
820
1035
|
|
|
821
1036
|
.cg-search__form button,
|
|
822
1037
|
.cg-form button[type="submit"],
|
|
823
1038
|
.cg-comment__form button[type="submit"] {
|
|
824
|
-
|
|
825
|
-
|
|
826
|
-
border
|
|
827
|
-
|
|
828
|
-
|
|
829
|
-
|
|
830
|
-
|
|
831
|
-
|
|
1039
|
+
min-block-size: 44px;
|
|
1040
|
+
padding: var(--cr-s3) var(--cr-s8);
|
|
1041
|
+
border: var(--cr-rule) solid var(--cr-action);
|
|
1042
|
+
border-radius: var(--cr-radius-control);
|
|
1043
|
+
background: var(--cr-action);
|
|
1044
|
+
color: var(--cr-action-fg);
|
|
1045
|
+
font-family: var(--cr-font-text);
|
|
1046
|
+
font-size: var(--cr-text-md);
|
|
1047
|
+
font-weight: var(--cr-weight-medium);
|
|
832
1048
|
cursor: pointer;
|
|
833
|
-
transition:
|
|
1049
|
+
transition:
|
|
1050
|
+
background-color var(--cr-duration) var(--cr-ease),
|
|
1051
|
+
border-color var(--cr-duration) var(--cr-ease),
|
|
1052
|
+
color var(--cr-duration) var(--cr-ease);
|
|
834
1053
|
}
|
|
835
1054
|
|
|
836
1055
|
.cg-search__form button:hover,
|
|
837
1056
|
.cg-form button[type="submit"]:hover,
|
|
838
1057
|
.cg-comment__form button[type="submit"]:hover {
|
|
839
|
-
background: var(--
|
|
1058
|
+
background: var(--cr-action-hover);
|
|
1059
|
+
border-color: var(--cr-action-hover);
|
|
1060
|
+
color: var(--cr-action-hover-fg);
|
|
840
1061
|
}
|
|
841
1062
|
|
|
842
|
-
.cg-form__field
|
|
843
|
-
.cg-comment__form p {
|
|
1063
|
+
.cg-form__field {
|
|
844
1064
|
display: block;
|
|
845
|
-
margin-block-end: var(--
|
|
846
|
-
}
|
|
847
|
-
|
|
848
|
-
.cg-form__field label,
|
|
849
|
-
.cg-comment__form label {
|
|
850
|
-
display: block;
|
|
851
|
-
font-size: var(--cg-text-sm);
|
|
852
|
-
margin-block-end: var(--cg-s2);
|
|
1065
|
+
margin-block-end: var(--cr-s6);
|
|
853
1066
|
}
|
|
854
1067
|
|
|
855
1068
|
.cg-form__help {
|
|
856
|
-
margin: var(--
|
|
857
|
-
font-size: var(--
|
|
858
|
-
color: var(--cg-ink-muted);
|
|
1069
|
+
margin: var(--cr-s2) 0 0;
|
|
1070
|
+
font-size: var(--cr-text-sm);
|
|
859
1071
|
}
|
|
860
1072
|
|
|
861
1073
|
.cg-form__choice {
|
|
862
1074
|
display: inline-flex;
|
|
863
1075
|
align-items: center;
|
|
864
|
-
gap: var(--
|
|
865
|
-
margin-inline-end: var(--
|
|
866
|
-
font-weight:
|
|
1076
|
+
gap: var(--cr-s2);
|
|
1077
|
+
margin-inline-end: var(--cr-s4);
|
|
1078
|
+
font-weight: var(--cr-weight-regular);
|
|
867
1079
|
}
|
|
868
1080
|
|
|
869
1081
|
.cg-form__honeypot,
|
|
@@ -875,11 +1087,34 @@ img {
|
|
|
875
1087
|
inset-inline-start: -9999px;
|
|
876
1088
|
}
|
|
877
1089
|
|
|
1090
|
+
/* Comments sit on the same twelve columns as the text above them, from the
|
|
1091
|
+
third column, like running text. */
|
|
878
1092
|
.cg-comments {
|
|
879
|
-
|
|
880
|
-
|
|
881
|
-
|
|
882
|
-
|
|
1093
|
+
display: grid;
|
|
1094
|
+
grid-template-columns: repeat(var(--cr-columns), minmax(0, 1fr));
|
|
1095
|
+
column-gap: var(--cr-col-gap);
|
|
1096
|
+
max-inline-size: calc(var(--cr-page) + var(--cr-gutter) * 2);
|
|
1097
|
+
margin: 0 auto var(--cr-section);
|
|
1098
|
+
padding: 0 var(--cr-gutter);
|
|
1099
|
+
}
|
|
1100
|
+
|
|
1101
|
+
.cg-comments > * {
|
|
1102
|
+
grid-column: 1 / -1;
|
|
1103
|
+
min-inline-size: 0;
|
|
1104
|
+
}
|
|
1105
|
+
|
|
1106
|
+
@media (min-width: 64rem) {
|
|
1107
|
+
.cg-comments > * {
|
|
1108
|
+
grid-column: 3 / span 7;
|
|
1109
|
+
}
|
|
1110
|
+
}
|
|
1111
|
+
|
|
1112
|
+
.cg-comments > h2 {
|
|
1113
|
+
padding-block-start: var(--cr-s5);
|
|
1114
|
+
border-block-start: var(--cr-rule) solid var(--cr-line-ink);
|
|
1115
|
+
margin-block-end: var(--cr-s5);
|
|
1116
|
+
font-size: var(--cr-size-section);
|
|
1117
|
+
font-weight: var(--cr-weight-light);
|
|
883
1118
|
}
|
|
884
1119
|
|
|
885
1120
|
.cg-comments__list,
|
|
@@ -890,34 +1125,52 @@ img {
|
|
|
890
1125
|
}
|
|
891
1126
|
|
|
892
1127
|
.cg-comment {
|
|
893
|
-
padding-block: var(--
|
|
894
|
-
border-block-
|
|
1128
|
+
padding-block: var(--cr-s5);
|
|
1129
|
+
border-block-start: var(--cr-rule) solid var(--cr-line);
|
|
895
1130
|
}
|
|
896
1131
|
|
|
897
1132
|
.cg-comment__replies {
|
|
898
|
-
|
|
899
|
-
|
|
900
|
-
|
|
901
|
-
.cg-comment__replies .cg-comment {
|
|
902
|
-
padding-inline-start: var(--cg-s6);
|
|
903
|
-
border-inline-start: 2px solid var(--cg-line-soft);
|
|
904
|
-
border-block-end: 0;
|
|
1133
|
+
margin-block-start: var(--cr-s4);
|
|
1134
|
+
padding-inline-start: var(--cr-s6);
|
|
1135
|
+
border-inline-start: var(--cr-rule) solid var(--cr-line);
|
|
905
1136
|
}
|
|
906
1137
|
|
|
907
1138
|
.cg-comment__meta {
|
|
908
1139
|
display: flex;
|
|
909
|
-
|
|
910
|
-
|
|
911
|
-
|
|
912
|
-
|
|
913
|
-
margin-block-end: var(--cg-s2);
|
|
1140
|
+
flex-wrap: wrap;
|
|
1141
|
+
gap: var(--cr-s1) var(--cr-s3);
|
|
1142
|
+
margin: 0 0 var(--cr-s2);
|
|
1143
|
+
font-size: var(--cr-text-sm);
|
|
914
1144
|
}
|
|
915
1145
|
|
|
916
1146
|
.cg-comment__author {
|
|
917
|
-
|
|
918
|
-
|
|
1147
|
+
color: var(--cr-ink);
|
|
1148
|
+
font-weight: var(--cr-weight-semibold);
|
|
919
1149
|
}
|
|
920
1150
|
|
|
921
|
-
.cg-
|
|
1151
|
+
.cg-comment__date {
|
|
1152
|
+
color: var(--cr-ink-muted);
|
|
1153
|
+
font-variant-numeric: lining-nums tabular-nums;
|
|
1154
|
+
}
|
|
1155
|
+
|
|
1156
|
+
.cg-comment__body p {
|
|
922
1157
|
margin: 0;
|
|
923
1158
|
}
|
|
1159
|
+
|
|
1160
|
+
.cg-comment__body p + p {
|
|
1161
|
+
margin-block-start: var(--cr-s3);
|
|
1162
|
+
}
|
|
1163
|
+
|
|
1164
|
+
.cg-comment__form {
|
|
1165
|
+
display: grid;
|
|
1166
|
+
gap: var(--cr-s3);
|
|
1167
|
+
margin-block-start: var(--cr-s6);
|
|
1168
|
+
}
|
|
1169
|
+
|
|
1170
|
+
.cg-comment__form > * {
|
|
1171
|
+
margin: 0;
|
|
1172
|
+
}
|
|
1173
|
+
|
|
1174
|
+
.cg-comment__form button[type="submit"] {
|
|
1175
|
+
justify-self: start;
|
|
1176
|
+
}
|