Skip to content

Commit 917e080

Browse files
asynclizcopybara-github
authored andcommitted
feat(labs): add Material for Tailwind theme stylesheet
PiperOrigin-RevId: 906622874
1 parent 3b431c9 commit 917e080

1 file changed

Lines changed: 152 additions & 0 deletions

File tree

labs/gb/styles/tailwind.scss

Lines changed: 152 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,152 @@
1+
/*!
2+
* Copyright 2026 Google LLC
3+
* SPDX-License-Identifier: Apache-2.0
4+
*/
5+
6+
// stylelint-disable scss/at-rule-no-unknown -- Uses TailwindCSS at-rules.
7+
8+
// Cascade `md` layer between `base` reset styles and `utilities` for overrides.
9+
@layer theme, base, md, components, utilities;
10+
@theme inline {
11+
// Color
12+
#{'--color-*'}: initial; // Do not use Tailwind's default color utilities.
13+
--color-primary: var(--md-sys-color-primary);
14+
--color-on-primary: var(--md-sys-color-on-primary);
15+
--color-primary-container: var(--md-sys-color-primary-container);
16+
--color-on-primary-container: var(--md-sys-color-on-primary-container);
17+
--color-primary-fixed: var(--md-sys-color-primary-fixed);
18+
--color-primary-fixed-dim: var(--md-sys-color-primary-fixed-dim);
19+
--color-on-primary-fixed: var(--md-sys-color-on-primary-fixed);
20+
--color-on-primary-fixed-variant: var(
21+
--md-sys-color-on-primary-fixed-variant
22+
);
23+
--color-secondary: var(--md-sys-color-secondary);
24+
--color-on-secondary: var(--md-sys-color-on-secondary);
25+
--color-secondary-container: var(--md-sys-color-secondary-container);
26+
--color-on-secondary-container: var(--md-sys-color-on-secondary-container);
27+
--color-secondary-fixed: var(--md-sys-color-secondary-fixed);
28+
--color-secondary-fixed-dim: var(--md-sys-color-secondary-fixed-dim);
29+
--color-on-secondary-fixed: var(--md-sys-color-on-secondary-fixed);
30+
--color-on-secondary-fixed-variant: var(
31+
--md-sys-color-on-secondary-fixed-variant
32+
);
33+
--color-tertiary: var(--md-sys-color-tertiary);
34+
--color-on-tertiary: var(--md-sys-color-on-tertiary);
35+
--color-tertiary-container: var(--md-sys-color-tertiary-container);
36+
--color-on-tertiary-container: var(--md-sys-color-on-tertiary-container);
37+
--color-tertiary-fixed: var(--md-sys-color-tertiary-fixed);
38+
--color-tertiary-fixed-dim: var(--md-sys-color-tertiary-fixed-dim);
39+
--color-on-tertiary-fixed: var(--md-sys-color-on-tertiary-fixed);
40+
--color-on-tertiary-fixed-variant: var(
41+
--md-sys-color-on-tertiary-fixed-variant
42+
);
43+
--color-error: var(--md-sys-color-error);
44+
--color-on-error: var(--md-sys-color-on-error);
45+
--color-error-container: var(--md-sys-color-error-container);
46+
--color-on-error-container: var(--md-sys-color-on-error-container);
47+
--color-surface: var(--md-sys-color-surface);
48+
--color-surface-dim: var(--md-sys-color-surface-dim);
49+
--color-surface-bright: var(--md-sys-color-surface-bright);
50+
--color-surface-container-lowest: var(
51+
--md-sys-color-surface-container-lowest
52+
);
53+
--color-surface-container-low: var(--md-sys-color-surface-container-low);
54+
--color-surface-container: var(--md-sys-color-surface-container);
55+
--color-surface-container-high: var(--md-sys-color-surface-container-high);
56+
--color-surface-container-highest: var(
57+
--md-sys-color-surface-container-highest
58+
);
59+
--color-on-surface: var(--md-sys-color-on-surface);
60+
--color-on-surface-variant: var(--md-sys-color-on-surface-variant);
61+
--color-outline: var(--md-sys-color-outline);
62+
--color-outline-variant: var(--md-sys-color-outline-variant);
63+
--color-inverse-surface: var(--md-sys-color-inverse-surface);
64+
--color-inverse-on-surface: var(--md-sys-color-inverse-on-surface);
65+
--color-inverse-primary: var(--md-sys-color-inverse-primary);
66+
--color-scrim: var(--md-sys-color-scrim);
67+
--color-shadow: var(--md-sys-color-shadow);
68+
69+
// Typography
70+
#{'--font-*'}: initial; // Do not use Tailwind's default font utilities.
71+
--font-brand: var(--md-ref-typeface-brand);
72+
--font-plain: var(--md-ref-typeface-plain);
73+
#{'--text-*'}: initial; // Do not use Tailwind's default text utilities.
74+
#{'--tracking-*'}: initial;
75+
#{'--leading-*'}: initial;
76+
// Use the `typescale-<name>-<size>` utility to apply typography tokens.
77+
--typescale-label-sm: var(--md-sys-typescale-label-sm);
78+
--typescale-label-sm-tracking: var(--md-sys-typescale-label-sm-tracking);
79+
--typescale-label-md: var(--md-sys-typescale-label-md);
80+
--typescale-label-md-tracking: var(--md-sys-typescale-label-md-tracking);
81+
--typescale-label-lg: var(--md-sys-typescale-label-lg);
82+
--typescale-label-lg-tracking: var(--md-sys-typescale-label-lg-tracking);
83+
--typescale-body-sm: var(--md-sys-typescale-body-sm);
84+
--typescale-body-sm-tracking: var(--md-sys-typescale-body-sm-tracking);
85+
--typescale-body-md: var(--md-sys-typescale-body-md);
86+
--typescale-body-md-tracking: var(--md-sys-typescale-body-md-tracking);
87+
--typescale-body-lg: var(--md-sys-typescale-body-lg);
88+
--typescale-body-lg-tracking: var(--md-sys-typescale-body-lg-tracking);
89+
--typescale-title-sm: var(--md-sys-typescale-title-sm);
90+
--typescale-title-sm-tracking: var(--md-sys-typescale-title-sm-tracking);
91+
--typescale-title-md: var(--md-sys-typescale-title-md);
92+
--typescale-title-md-tracking: var(--md-sys-typescale-title-md-tracking);
93+
--typescale-title-lg: var(--md-sys-typescale-title-lg);
94+
--typescale-title-lg-tracking: var(--md-sys-typescale-title-lg-tracking);
95+
--typescale-headline-sm: var(--md-sys-typescale-headline-sm);
96+
--typescale-headline-sm-tracking: var(
97+
--md-sys-typescale-headline-sm-tracking
98+
);
99+
--typescale-headline-md: var(--md-sys-typescale-headline-md);
100+
--typescale-headline-md-tracking: var(
101+
--md-sys-typescale-headline-md-tracking
102+
);
103+
--typescale-headline-lg: var(--md-sys-typescale-headline-lg);
104+
--typescale-headline-lg-tracking: var(
105+
--md-sys-typescale-headline-lg-tracking
106+
);
107+
--typescale-display-sm: var(--md-sys-typescale-display-sm);
108+
--typescale-display-sm-tracking: var(--md-sys-typescale-display-sm-tracking);
109+
--typescale-display-md: var(--md-sys-typescale-display-md);
110+
--typescale-display-md-tracking: var(--md-sys-typescale-display-md-tracking);
111+
--typescale-display-lg: var(--md-sys-typescale-display-lg);
112+
--typescale-display-lg-tracking: var(--md-sys-typescale-display-lg-tracking);
113+
#{'--font-weight-*'}: initial; // Material supports a limited set of font weights.
114+
--font-weight-normal: var(--md-ref-typeface-weight-regular);
115+
--font-weight-medium: var(--md-ref-typeface-weight-medium);
116+
--font-weight-bold: var(--md-ref-typeface-weight-bold);
117+
118+
// Shape
119+
--radius-xs: var(--md-sys-shape-corner-xs);
120+
--radius-sm: var(--md-sys-shape-corner-sm);
121+
--radius-md: var(--md-sys-shape-corner-md);
122+
--radius-lg: var(--md-sys-shape-corner-lg);
123+
--radius-xl: var(--md-sys-shape-corner-lg-increased);
124+
--radius-2xl: var(--md-sys-shape-corner-xl);
125+
--radius-3xl: var(--md-sys-shape-corner-xl-increased);
126+
--radius-4xl: var(--md-sys-shape-corner-xxl);
127+
128+
// Elevation
129+
--shadow-2xs: initial; // Material does not have a 2xs shadow.
130+
--shadow-xs: var(--md-sys-elevation-shadow-1);
131+
--shadow-sm: var(--md-sys-elevation-shadow-2);
132+
--shadow-md: var(--md-sys-elevation-shadow-3);
133+
--shadow-lg: var(--md-sys-elevation-shadow-4);
134+
--shadow-xl: var(--md-sys-elevation-shadow-5);
135+
--shadow-2xl: initial; // Material does not have a 2xl shadow.
136+
137+
// Space
138+
--spacing: 8px;
139+
140+
// Breakpoints
141+
--breakpoint-sm: 600px; // medium
142+
--breakpoint-md: 840px; // expanded
143+
--breakpoint-lg: 1200px; // large
144+
--breakpoint-xl: 1600px; // extra-large
145+
--breakpoint-2xl: initial; // Material does not have a 2xl breakpoint.
146+
}
147+
148+
// Use the `typescale-<name>-<size>` utility to apply typography tokens.
149+
@utility typescale-* {
150+
font: #{'--value(--typescale-*)'};
151+
letter-spacing: #{'--value(--typescale-*-tracking)'};
152+
}

0 commit comments

Comments
 (0)