@sorayasm/vietri-ds 0.3.1 → 0.4.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/dist/index.js CHANGED
@@ -1,87 +1,95 @@
1
- import { jsxs as d, jsx as e, Fragment as $ } from "react/jsx-runtime";
2
- import p from "@mui/material/Box";
3
- import b from "@mui/material/Stack";
4
- import h from "@mui/material/Typography";
5
- import { default as vt } from "@mui/material/Typography";
6
- import z from "@mui/material/Button";
7
- import { default as yt } from "@mui/material/Button";
1
+ import { jsxs as d, jsx as r, Fragment as T } from "react/jsx-runtime";
2
+ import s from "@mui/material/Box";
3
+ import x from "@mui/material/Stack";
4
+ import m from "@mui/material/Typography";
5
+ import { default as Ft } from "@mui/material/Typography";
6
+ import O from "@mui/material/Button";
7
+ import { default as Ct } from "@mui/material/Button";
8
8
  import A from "@mui/material/Card";
9
- import { default as St } from "@mui/material/Card";
9
+ import { default as wt } from "@mui/material/Card";
10
10
  import { default as kt } from "@mui/material/CardActionArea";
11
11
  import { default as At } from "@mui/material/CardActions";
12
- import D from "@mui/material/CardContent";
13
- import { default as Et } from "@mui/material/CardContent";
14
- import { default as Wt } from "@mui/material/CardMedia";
15
- import Y from "@mui/material/Chip";
16
- import { default as $t } from "@mui/material/Chip";
17
- import { useState as M, useMemo as ie, useId as E, useRef as I, useEffect as q, Children as ne } from "react";
18
- import B from "@mui/material/IconButton";
19
- import { ArrowRight as ae, Check as J, ChevronDown as le, ChevronLeft as Q, ChevronRight as K, Clock as ce, Copy as Z, Database as de, ExternalLink as H, Globe as se, Info as pe, LayoutGrid as ue, MapPin as he, Menu as me, Music as ee, Network as fe, Play as P, Search as ge, Share2 as be, ShieldCheck as xe, Sparkles as ve, TrendingUp as Fe, Users as ye, X as L } from "lucide-react";
20
- import Ce from "@mui/material/Table";
21
- import Se from "@mui/material/TableBody";
22
- import T from "@mui/material/TableCell";
23
- import we from "@mui/material/TableContainer";
12
+ import E from "@mui/material/CardContent";
13
+ import { default as It } from "@mui/material/CardContent";
14
+ import { default as Mt } from "@mui/material/CardMedia";
15
+ import q from "@mui/material/Chip";
16
+ import { default as Tt } from "@mui/material/Chip";
17
+ import { useState as $, useMemo as ne, useId as I, useRef as W, useEffect as J, Children as ae } from "react";
18
+ import D from "@mui/material/IconButton";
19
+ import { ArrowRight as le, Check as Q, ChevronDown as ce, ChevronLeft as K, ChevronRight as Z, Clock as de, Copy as ee, Database as se, ExternalLink as H, Globe as pe, Info as ue, LayoutGrid as me, MapPin as he, Menu as fe, Music as re, Network as ge, Play as L, Search as be, Share2 as xe, ShieldCheck as ve, Sparkles as Fe, TrendingUp as ye, Users as Ce, X as P } from "lucide-react";
20
+ import Se from "@mui/material/Table";
21
+ import we from "@mui/material/TableBody";
22
+ import R from "@mui/material/TableCell";
23
+ import Be from "@mui/material/TableContainer";
24
24
  import ke from "@mui/material/TableHead";
25
- import O from "@mui/material/TableRow";
26
- import Be from "@mui/material/TableSortLabel";
25
+ import z from "@mui/material/TableRow";
26
+ import De from "@mui/material/TableSortLabel";
27
27
  import Ae from "@mui/material/DialogActions";
28
- import De from "@mui/material/DialogContent";
29
- import Ee from "@mui/material/DialogContentText";
30
- import Ie from "@mui/material/DialogTitle";
31
- import We from "@mui/material/Dialog";
32
- import re from "@mui/material/Drawer";
33
- import S from "@mui/material/Link";
28
+ import Ee from "@mui/material/DialogContent";
29
+ import Ie from "@mui/material/DialogContentText";
30
+ import We from "@mui/material/DialogTitle";
31
+ import Me from "@mui/material/Dialog";
32
+ import te from "@mui/material/Drawer";
33
+ import w from "@mui/material/Link";
34
34
  import j from "@mui/material/Container";
35
- import Me from "@mui/material/Divider";
36
- import { useTheme as te, alpha as w, createTheme as $e } from "@mui/material/styles";
37
- import Te from "@mui/material/TextField";
38
- import { default as Ot } from "@mui/material/TextField";
39
- import Oe from "@mui/material/ToggleButton";
40
- import Re from "@mui/material/ToggleButtonGroup";
41
- import ze from "@mui/material/AppBar";
42
- import He from "@mui/material/SvgIcon";
35
+ import $e from "@mui/material/Divider";
36
+ import { useTheme as oe, alpha as y, createTheme as Te } from "@mui/material/styles";
37
+ import Re from "@mui/material/TextField";
38
+ import { default as zt } from "@mui/material/TextField";
39
+ import ze from "@mui/material/ToggleButton";
40
+ import Oe from "@mui/material/ToggleButtonGroup";
41
+ import He from "@mui/material/AppBar";
42
+ import Le from "@mui/material/SvgIcon";
43
43
  import Pe from "@mui/material/Toolbar";
44
- import Le from "@mui/material/useMediaQuery";
45
- import je from "@mui/material/MenuItem";
46
- import { default as zt } from "@mui/material/Tab";
44
+ import je from "@mui/material/useMediaQuery";
45
+ import Ve from "@mui/material/MenuItem";
46
+ import { default as Ht } from "@mui/material/Tab";
47
47
  import { default as Pt } from "@mui/material/Tabs";
48
48
  import Ne from "@mui/material/ButtonBase";
49
49
  function Ge() {
50
- return /* @__PURE__ */ e(He, { children: /* @__PURE__ */ e("path", { d: "M3 18h18v-2H3v2zm0-5h18v-2H3v2zm0-7v2h18V6H3z" }) });
50
+ return /* @__PURE__ */ r(Le, { children: /* @__PURE__ */ r("path", { d: "M3 18h18v-2H3v2zm0-5h18v-2H3v2zm0-7v2h18V6H3z" }) });
51
51
  }
52
52
  function _({
53
- link: r,
54
- onClick: t
53
+ link: e,
54
+ onClick: t,
55
+ accent: o = !1
55
56
  }) {
56
- return /* @__PURE__ */ e(
57
- S,
57
+ const i = !!e.current;
58
+ return /* @__PURE__ */ r(
59
+ w,
58
60
  {
59
- href: r.href,
60
- underline: "none",
61
- "aria-current": r.current ? "page" : void 0,
61
+ href: e.href,
62
+ underline: o ? i ? "always" : "hover" : "none",
63
+ "aria-current": i ? "page" : void 0,
62
64
  onClick: t,
63
- sx: {
64
- color: r.current ? "text.primary" : "text.secondary",
65
- fontWeight: r.current ? 600 : 500,
66
- "&:hover": { color: "text.primary" }
67
- },
68
- children: r.label
65
+ sx: (n) => ({
66
+ color: o ? i ? n.palette.text.primary : n.palette.primary.main : i ? n.palette.text.primary : n.palette.text.secondary,
67
+ fontWeight: i ? 600 : 500,
68
+ ...o && i && {
69
+ textDecorationColor: n.palette.primary.main,
70
+ textDecorationThickness: 2,
71
+ textUnderlineOffset: 8
72
+ },
73
+ ...!o && { "&:hover": { color: n.palette.text.primary } }
74
+ }),
75
+ children: e.label
69
76
  }
70
77
  );
71
78
  }
72
79
  function Gr({
73
- brand: r,
80
+ brand: e,
74
81
  brandHref: t = "/",
75
82
  links: o,
76
- actions: l,
83
+ actions: i,
77
84
  ariaLabel: n = "Main",
78
- menuLabel: a = "Menu",
85
+ menuLabel: l = "Menu",
79
86
  closeLabel: u = "Close menu",
80
- maxWidth: f = "lg"
87
+ maxWidth: h = "lg",
88
+ accentLinks: c = !1
81
89
  }) {
82
- const c = te(), i = Le(c.breakpoints.up("md"), { noSsr: !0 }), [s, m] = M(!1), g = () => m(!1);
90
+ const a = oe(), p = je(a.breakpoints.up("md"), { noSsr: !0 }), [f, g] = $(!1), v = () => g(!1);
83
91
  return /* @__PURE__ */ d(
84
- ze,
92
+ He,
85
93
  {
86
94
  component: "header",
87
95
  position: "sticky",
@@ -94,7 +102,7 @@ function Gr({
94
102
  borderColor: "divider"
95
103
  },
96
104
  children: [
97
- /* @__PURE__ */ e(j, { maxWidth: f, children: /* @__PURE__ */ d(
105
+ /* @__PURE__ */ r(j, { maxWidth: h, children: /* @__PURE__ */ d(
98
106
  Pe,
99
107
  {
100
108
  disableGutters: !0,
@@ -104,54 +112,54 @@ function Gr({
104
112
  minHeight: { xs: 64, md: 72 }
105
113
  },
106
114
  children: [
107
- /* @__PURE__ */ e(
108
- S,
115
+ /* @__PURE__ */ r(
116
+ w,
109
117
  {
110
118
  href: t,
111
119
  underline: "none",
112
120
  color: "text.primary",
113
121
  sx: { fontWeight: 600, letterSpacing: "-0.03em", fontSize: "1.125rem" },
114
- children: r
122
+ children: e
115
123
  }
116
124
  ),
117
- i ? /* @__PURE__ */ d(b, { direction: "row", alignItems: "center", spacing: 4, children: [
118
- /* @__PURE__ */ e(p, { component: "nav", "aria-label": n, children: /* @__PURE__ */ e(
119
- b,
125
+ p ? /* @__PURE__ */ d(x, { direction: "row", alignItems: "center", spacing: 4, children: [
126
+ /* @__PURE__ */ r(s, { component: "nav", "aria-label": n, children: /* @__PURE__ */ r(
127
+ x,
120
128
  {
121
129
  component: "ul",
122
130
  direction: "row",
123
131
  spacing: 4,
124
132
  sx: { listStyle: "none", m: 0, p: 0 },
125
- children: o.map((x) => /* @__PURE__ */ e("li", { children: /* @__PURE__ */ e(_, { link: x }) }, x.href))
133
+ children: o.map((b) => /* @__PURE__ */ r("li", { children: /* @__PURE__ */ r(_, { link: b, accent: c }) }, b.href))
126
134
  }
127
135
  ) }),
128
- l
129
- ] }) : /* @__PURE__ */ d(b, { direction: "row", alignItems: "center", spacing: 1, children: [
130
- l,
131
- /* @__PURE__ */ e(
132
- B,
136
+ i
137
+ ] }) : /* @__PURE__ */ d(x, { direction: "row", alignItems: "center", spacing: 1, children: [
138
+ i,
139
+ /* @__PURE__ */ r(
140
+ D,
133
141
  {
134
142
  edge: "end",
135
- color: "inherit",
136
- "aria-label": a,
137
- "aria-expanded": s,
138
- onClick: () => m(!0),
139
- children: /* @__PURE__ */ e(Ge, {})
143
+ color: c ? "primary" : "inherit",
144
+ "aria-label": l,
145
+ "aria-expanded": f,
146
+ onClick: () => g(!0),
147
+ children: /* @__PURE__ */ r(Ge, {})
140
148
  }
141
149
  )
142
150
  ] })
143
151
  ]
144
152
  }
145
153
  ) }),
146
- !i && /* @__PURE__ */ e(re, { anchor: "right", open: s, onClose: g, children: /* @__PURE__ */ d(p, { sx: { width: 280, p: 3 }, children: [
147
- /* @__PURE__ */ e(b, { alignItems: "flex-end", sx: { mb: 3 }, children: /* @__PURE__ */ e(z, { variant: "text", color: "secondary", onClick: g, children: u }) }),
148
- /* @__PURE__ */ e(p, { component: "nav", "aria-label": n, children: /* @__PURE__ */ e(
149
- b,
154
+ !p && /* @__PURE__ */ r(te, { anchor: "right", open: f, onClose: v, children: /* @__PURE__ */ d(s, { sx: { width: 280, p: 3 }, children: [
155
+ /* @__PURE__ */ r(x, { alignItems: "flex-end", sx: { mb: 3 }, children: /* @__PURE__ */ r(O, { variant: "text", color: c ? "primary" : "secondary", onClick: v, children: u }) }),
156
+ /* @__PURE__ */ r(s, { component: "nav", "aria-label": n, children: /* @__PURE__ */ r(
157
+ x,
150
158
  {
151
159
  component: "ul",
152
160
  spacing: 3,
153
161
  sx: { listStyle: "none", m: 0, p: 0, fontSize: "1.25rem" },
154
- children: o.map((x) => /* @__PURE__ */ e("li", { children: /* @__PURE__ */ e(_, { link: x, onClick: g }) }, x.href))
162
+ children: o.map((b) => /* @__PURE__ */ r("li", { children: /* @__PURE__ */ r(_, { link: b, onClick: v, accent: c }) }, b.href))
155
163
  }
156
164
  ) })
157
165
  ] }) })
@@ -159,123 +167,123 @@ function Gr({
159
167
  }
160
168
  );
161
169
  }
162
- const Ve = [
170
+ const Ue = [
163
171
  { value: "en", label: "EN" },
164
172
  { value: "es", label: "ES" }
165
173
  ];
166
- function Vr({
167
- value: r,
174
+ function Ur({
175
+ value: e,
168
176
  onChange: t,
169
- options: o = Ve,
170
- ariaLabel: l = "Language"
177
+ options: o = Ue,
178
+ ariaLabel: i = "Language"
171
179
  }) {
172
- return /* @__PURE__ */ e(
173
- Re,
180
+ return /* @__PURE__ */ r(
181
+ Oe,
174
182
  {
175
183
  exclusive: !0,
176
184
  size: "small",
177
- value: r,
178
- "aria-label": l,
179
- onChange: (n, a) => {
180
- a !== null && t(a);
185
+ value: e,
186
+ "aria-label": i,
187
+ onChange: (n, l) => {
188
+ l !== null && t(l);
181
189
  },
182
- children: o.map((n) => /* @__PURE__ */ e(Oe, { value: n.value, children: n.label }, n.value))
190
+ children: o.map((n) => /* @__PURE__ */ r(ze, { value: n.value, children: n.label }, n.value))
183
191
  }
184
192
  );
185
193
  }
186
- function _r({ value: r, label: t, description: o }) {
187
- return /* @__PURE__ */ e(A, { children: /* @__PURE__ */ d(D, { children: [
188
- /* @__PURE__ */ e(h, { variant: "h3", component: "p", children: r }),
189
- /* @__PURE__ */ e(h, { variant: "body1", sx: { mt: 1 }, children: t }),
190
- o && /* @__PURE__ */ e(h, { variant: "body2", color: "text.secondary", sx: { mt: 1 }, children: o })
194
+ function _r({ value: e, label: t, description: o }) {
195
+ return /* @__PURE__ */ r(A, { children: /* @__PURE__ */ d(E, { children: [
196
+ /* @__PURE__ */ r(m, { variant: "h3", component: "p", children: e }),
197
+ /* @__PURE__ */ r(m, { variant: "body1", sx: { mt: 1 }, children: t }),
198
+ o && /* @__PURE__ */ r(m, { variant: "body2", color: "text.secondary", sx: { mt: 1 }, children: o })
191
199
  ] }) });
192
200
  }
193
- function oe(r, t) {
194
- return r[t.key];
201
+ function ie(e, t) {
202
+ return e[t.key];
195
203
  }
196
- function U(r, t) {
197
- if (t.sortValue) return t.sortValue(r);
198
- const o = oe(r, t);
204
+ function X(e, t) {
205
+ if (t.sortValue) return t.sortValue(e);
206
+ const o = ie(e, t);
199
207
  return typeof o == "number" ? o : String(o ?? "");
200
208
  }
201
- function _e(r, t) {
202
- return typeof r == "number" && typeof t == "number" ? r - t : String(r).localeCompare(String(t), void 0, { numeric: !0 });
209
+ function _e(e, t) {
210
+ return typeof e == "number" && typeof t == "number" ? e - t : String(e).localeCompare(String(t), void 0, { numeric: !0 });
203
211
  }
204
- function Ur({
205
- columns: r,
212
+ function Xr({
213
+ columns: e,
206
214
  rows: t,
207
215
  getRowKey: o,
208
- caption: l,
216
+ caption: i,
209
217
  emptyMessage: n = "No data"
210
218
  }) {
211
- const [a, u] = M(
219
+ const [l, u] = $(
212
220
  null
213
- ), f = ie(() => {
221
+ ), h = ne(() => {
222
+ if (!l) return t;
223
+ const a = e.find((f) => f.key === l.key);
214
224
  if (!a) return t;
215
- const i = r.find((m) => m.key === a.key);
216
- if (!i) return t;
217
- const s = a.direction === "asc" ? 1 : -1;
225
+ const p = l.direction === "asc" ? 1 : -1;
218
226
  return [...t].sort(
219
- (m, g) => s * _e(U(m, i), U(g, i))
227
+ (f, g) => p * _e(X(f, a), X(g, a))
220
228
  );
221
- }, [t, r, a]), c = (i) => {
229
+ }, [t, e, l]), c = (a) => {
222
230
  u(
223
- (s) => s?.key === i && s.direction === "asc" ? { key: i, direction: "desc" } : { key: i, direction: "asc" }
231
+ (p) => p?.key === a && p.direction === "asc" ? { key: a, direction: "desc" } : { key: a, direction: "asc" }
224
232
  );
225
233
  };
226
- return /* @__PURE__ */ e(we, { tabIndex: 0, sx: { overflowX: "auto" }, children: /* @__PURE__ */ d(Ce, { children: [
227
- l && /* @__PURE__ */ e(
228
- h,
234
+ return /* @__PURE__ */ r(Be, { tabIndex: 0, sx: { overflowX: "auto" }, children: /* @__PURE__ */ d(Se, { children: [
235
+ i && /* @__PURE__ */ r(
236
+ m,
229
237
  {
230
238
  component: "caption",
231
239
  variant: "body2",
232
240
  color: "text.secondary",
233
241
  sx: { captionSide: "top", textAlign: "left", pb: 2 },
234
- children: l
242
+ children: i
235
243
  }
236
244
  ),
237
- /* @__PURE__ */ e(ke, { children: /* @__PURE__ */ e(O, { children: r.map((i) => {
238
- const s = a?.key === i.key ? a.direction : void 0;
239
- return /* @__PURE__ */ e(
240
- T,
245
+ /* @__PURE__ */ r(ke, { children: /* @__PURE__ */ r(z, { children: e.map((a) => {
246
+ const p = l?.key === a.key ? l.direction : void 0;
247
+ return /* @__PURE__ */ r(
248
+ R,
241
249
  {
242
- align: i.align,
243
- sortDirection: s ?? !1,
244
- children: i.sortable ? /* @__PURE__ */ e(
245
- Be,
250
+ align: a.align,
251
+ sortDirection: p ?? !1,
252
+ children: a.sortable ? /* @__PURE__ */ r(
253
+ De,
246
254
  {
247
- active: s !== void 0,
248
- direction: s ?? "asc",
249
- onClick: () => c(i.key),
250
- children: i.header
255
+ active: p !== void 0,
256
+ direction: p ?? "asc",
257
+ onClick: () => c(a.key),
258
+ children: a.header
251
259
  }
252
- ) : i.header
260
+ ) : a.header
253
261
  },
254
- i.key
262
+ a.key
255
263
  );
256
264
  }) }) }),
257
- /* @__PURE__ */ e(Se, { children: f.length === 0 ? /* @__PURE__ */ e(O, { children: /* @__PURE__ */ e(T, { colSpan: r.length, align: "center", children: n }) }) : f.map((i) => /* @__PURE__ */ e(O, { children: r.map((s, m) => /* @__PURE__ */ e(
258
- T,
265
+ /* @__PURE__ */ r(we, { children: h.length === 0 ? /* @__PURE__ */ r(z, { children: /* @__PURE__ */ r(R, { colSpan: e.length, align: "center", children: n }) }) : h.map((a) => /* @__PURE__ */ r(z, { children: e.map((p, f) => /* @__PURE__ */ r(
266
+ R,
259
267
  {
260
- align: s.align,
261
- component: m === 0 ? "th" : "td",
262
- scope: m === 0 ? "row" : void 0,
263
- children: s.render ? s.render(i) : String(oe(i, s) ?? "")
268
+ align: p.align,
269
+ component: f === 0 ? "th" : "td",
270
+ scope: f === 0 ? "row" : void 0,
271
+ children: p.render ? p.render(a) : String(ie(a, p) ?? "")
264
272
  },
265
- s.key
266
- )) }, o(i))) })
273
+ p.key
274
+ )) }, o(a))) })
267
275
  ] }) });
268
276
  }
269
- function Xr({
270
- data: r,
277
+ function Yr({
278
+ data: e,
271
279
  title: t,
272
280
  max: o,
273
- formatValue: l = String
281
+ formatValue: i = String
274
282
  }) {
275
- const n = o ?? Math.max(0, ...r.map((a) => a.value));
276
- return /* @__PURE__ */ d(p, { component: "figure", sx: { m: 0 }, children: [
277
- t && /* @__PURE__ */ e(
278
- h,
283
+ const n = o ?? Math.max(0, ...e.map((l) => l.value));
284
+ return /* @__PURE__ */ d(s, { component: "figure", sx: { m: 0 }, children: [
285
+ t && /* @__PURE__ */ r(
286
+ m,
279
287
  {
280
288
  component: "figcaption",
281
289
  variant: "overline",
@@ -284,10 +292,10 @@ function Xr({
284
292
  children: t
285
293
  }
286
294
  ),
287
- /* @__PURE__ */ e(b, { component: "ul", spacing: 1.5, sx: { listStyle: "none", m: 0, p: 0 }, children: r.map((a) => {
288
- const u = n > 0 ? Math.min(100, Math.max(0, a.value / n * 100)) : 0, f = l(a.value);
295
+ /* @__PURE__ */ r(x, { component: "ul", spacing: 1.5, sx: { listStyle: "none", m: 0, p: 0 }, children: e.map((l) => {
296
+ const u = n > 0 ? Math.min(100, Math.max(0, l.value / n * 100)) : 0, h = i(l.value);
289
297
  return /* @__PURE__ */ d(
290
- p,
298
+ s,
291
299
  {
292
300
  component: "li",
293
301
  sx: {
@@ -297,24 +305,24 @@ function Xr({
297
305
  columnGap: 2
298
306
  },
299
307
  children: [
300
- /* @__PURE__ */ e(h, { variant: "body2", "aria-hidden": "true", children: a.label }),
301
- /* @__PURE__ */ e(
302
- p,
308
+ /* @__PURE__ */ r(m, { variant: "body2", "aria-hidden": "true", children: l.label }),
309
+ /* @__PURE__ */ r(
310
+ s,
303
311
  {
304
312
  role: "meter",
305
- "aria-label": a.label,
313
+ "aria-label": l.label,
306
314
  "aria-valuemin": 0,
307
315
  "aria-valuemax": n,
308
- "aria-valuenow": a.value,
309
- "aria-valuetext": f,
316
+ "aria-valuenow": l.value,
317
+ "aria-valuetext": h,
310
318
  sx: {
311
319
  height: 12,
312
320
  borderRadius: 1,
313
321
  bgcolor: "divider",
314
322
  overflow: "hidden"
315
323
  },
316
- children: /* @__PURE__ */ e(
317
- p,
324
+ children: /* @__PURE__ */ r(
325
+ s,
318
326
  {
319
327
  style: { width: `${u}%` },
320
328
  sx: { height: "100%", bgcolor: "primary.main" }
@@ -322,78 +330,78 @@ function Xr({
322
330
  )
323
331
  }
324
332
  ),
325
- /* @__PURE__ */ e(
326
- h,
333
+ /* @__PURE__ */ r(
334
+ m,
327
335
  {
328
336
  variant: "body2",
329
337
  "aria-hidden": "true",
330
338
  sx: { minWidth: 40, textAlign: "right", fontWeight: 600 },
331
- children: f
339
+ children: h
332
340
  }
333
341
  )
334
342
  ]
335
343
  },
336
- a.label
344
+ l.label
337
345
  );
338
346
  }) })
339
347
  ] });
340
348
  }
341
- function C({ icon: r, label: t, size: o = 18, ...l }) {
342
- return t ? /* @__PURE__ */ e(r, { size: o, role: "img", "aria-label": t, ...l }) : /* @__PURE__ */ e(r, { size: o, "aria-hidden": "true", focusable: "false", ...l });
349
+ function S({ icon: e, label: t, size: o = 18, ...i }) {
350
+ return t ? /* @__PURE__ */ r(e, { size: o, role: "img", "aria-label": t, ...i }) : /* @__PURE__ */ r(e, { size: o, "aria-hidden": "true", focusable: "false", ...i });
343
351
  }
344
- const Yr = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
352
+ const qr = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
345
353
  __proto__: null,
346
- ArrowRight: ae,
347
- Check: J,
348
- ChevronDown: le,
349
- ChevronLeft: Q,
350
- ChevronRight: K,
351
- Clock: ce,
352
- Copy: Z,
353
- Database: de,
354
+ ArrowRight: le,
355
+ Check: Q,
356
+ ChevronDown: ce,
357
+ ChevronLeft: K,
358
+ ChevronRight: Z,
359
+ Clock: de,
360
+ Copy: ee,
361
+ Database: se,
354
362
  ExternalLink: H,
355
- Globe: se,
356
- Info: pe,
357
- LayoutGrid: ue,
363
+ Globe: pe,
364
+ Info: ue,
365
+ LayoutGrid: me,
358
366
  MapPin: he,
359
- Menu: me,
360
- Music: ee,
361
- Network: fe,
362
- Play: P,
363
- Search: ge,
364
- Share2: be,
365
- ShieldCheck: xe,
366
- Sparkles: ve,
367
- TrendingUp: Fe,
368
- Users: ye,
369
- X: L
367
+ Menu: fe,
368
+ Music: re,
369
+ Network: ge,
370
+ Play: L,
371
+ Search: be,
372
+ Share2: xe,
373
+ ShieldCheck: ve,
374
+ Sparkles: Fe,
375
+ TrendingUp: ye,
376
+ Users: Ce,
377
+ X: P
370
378
  }, Symbol.toStringTag, { value: "Module" }));
371
- function Ue({ color: r, dot: t = !1, ...o }) {
372
- return /* @__PURE__ */ e(
373
- Y,
379
+ function Xe({ color: e, dot: t = !1, ...o }) {
380
+ return /* @__PURE__ */ r(
381
+ q,
374
382
  {
375
383
  size: "small",
376
384
  ...o,
377
- icon: t ? /* @__PURE__ */ e(
378
- p,
385
+ icon: t ? /* @__PURE__ */ r(
386
+ s,
379
387
  {
380
388
  component: "span",
381
389
  "aria-hidden": "true",
382
- sx: { width: 8, height: 8, borderRadius: "50%", bgcolor: r.fg }
390
+ sx: { width: 8, height: 8, borderRadius: "50%", bgcolor: e.fg }
383
391
  }
384
392
  ) : void 0,
385
393
  sx: {
386
- bgcolor: r.bg,
387
- color: r.fg,
388
- "&.MuiChip-clickable:hover": { bgcolor: r.bg, filter: "brightness(0.95)" },
389
- "& .MuiChip-icon": { color: r.fg, ml: 1, mr: -0.25 }
394
+ bgcolor: e.bg,
395
+ color: e.fg,
396
+ "&.MuiChip-clickable:hover": { bgcolor: e.bg, filter: "brightness(0.95)" },
397
+ "& .MuiChip-icon": { color: e.fg, ml: 1, mr: -0.25 }
390
398
  }
391
399
  }
392
400
  );
393
401
  }
394
- function N(r) {
395
- return /* @__PURE__ */ e(
396
- p,
402
+ function V(e) {
403
+ return /* @__PURE__ */ r(
404
+ s,
397
405
  {
398
406
  component: "span",
399
407
  sx: {
@@ -407,42 +415,46 @@ function N(r) {
407
415
  whiteSpace: "nowrap",
408
416
  width: "1px"
409
417
  },
410
- ...r
418
+ ...e
411
419
  }
412
420
  );
413
421
  }
414
- function qr({
415
- title: r,
422
+ function Jr({
423
+ title: e,
416
424
  description: t,
417
425
  lines: o = [],
418
- links: l = [],
426
+ links: i = [],
419
427
  linksLabel: n = "Footer links",
420
- action: a,
428
+ action: l,
421
429
  legal: u,
422
- externalLabel: f = "(opens in a new tab)"
430
+ externalLabel: h = "(opens in a new tab)"
423
431
  }) {
424
- const { glow: c } = te().vietri.color;
432
+ const { glow: c } = oe().vietri.color;
425
433
  return /* @__PURE__ */ d(
426
- p,
434
+ s,
427
435
  {
428
436
  component: "footer",
429
- sx: (i) => ({
437
+ sx: (a) => ({
430
438
  position: "relative",
431
439
  overflow: "hidden",
432
440
  py: 6,
433
- color: i.vietri.color.onSurface,
434
- background: i.vietri.gradient.surface,
441
+ color: a.vietri.color.onSurface,
442
+ background: a.vietri.gradient.surface,
443
+ // A thin rule along the top, when the theme defines one.
444
+ ...a.vietri.color.surfaceRule && {
445
+ borderTop: `4px solid ${a.vietri.color.surfaceRule}`
446
+ },
435
447
  // The default focus ring is not visible on dark backgrounds.
436
448
  "& a:focus-visible, & button:focus-visible": {
437
449
  outline: "2px solid",
438
- outlineColor: i.vietri.color.onSurface,
450
+ outlineColor: a.vietri.color.onSurface,
439
451
  outlineOffset: 3
440
452
  }
441
453
  }),
442
454
  children: [
443
- c && /* @__PURE__ */ d($, { children: [
444
- /* @__PURE__ */ e(
445
- p,
455
+ c && /* @__PURE__ */ d(T, { children: [
456
+ /* @__PURE__ */ r(
457
+ s,
446
458
  {
447
459
  "aria-hidden": "true",
448
460
  sx: {
@@ -452,14 +464,14 @@ function qr({
452
464
  width: 384,
453
465
  height: 384,
454
466
  borderRadius: "50%",
455
- bgcolor: w(c[0], 0.22),
467
+ bgcolor: y(c[0], 0.22),
456
468
  filter: "blur(64px)",
457
469
  pointerEvents: "none"
458
470
  }
459
471
  }
460
472
  ),
461
- /* @__PURE__ */ e(
462
- p,
473
+ /* @__PURE__ */ r(
474
+ s,
463
475
  {
464
476
  "aria-hidden": "true",
465
477
  sx: {
@@ -469,7 +481,7 @@ function qr({
469
481
  width: 384,
470
482
  height: 384,
471
483
  borderRadius: "50%",
472
- bgcolor: w(c[1], 0.22),
484
+ bgcolor: y(c[1], 0.22),
473
485
  filter: "blur(64px)",
474
486
  pointerEvents: "none"
475
487
  }
@@ -478,39 +490,39 @@ function qr({
478
490
  ] }),
479
491
  /* @__PURE__ */ d(j, { maxWidth: "lg", sx: { position: "relative", zIndex: 1 }, children: [
480
492
  /* @__PURE__ */ d(
481
- b,
493
+ x,
482
494
  {
483
495
  direction: { xs: "column", sm: "row" },
484
496
  justifyContent: "space-between",
485
497
  alignItems: { xs: "flex-start", sm: "center" },
486
498
  spacing: 4,
487
499
  children: [
488
- /* @__PURE__ */ d(b, { spacing: 1, children: [
489
- /* @__PURE__ */ e(h, { component: "p", variant: "h6", children: r }),
490
- t && /* @__PURE__ */ e(
491
- h,
500
+ /* @__PURE__ */ d(x, { spacing: 1, children: [
501
+ /* @__PURE__ */ r(m, { component: "p", variant: "h6", children: e }),
502
+ t && /* @__PURE__ */ r(
503
+ m,
492
504
  {
493
505
  variant: "body2",
494
- sx: (i) => ({
506
+ sx: (a) => ({
495
507
  maxWidth: 560,
496
- color: i.vietri.color.onSurfaceSoft
508
+ color: a.vietri.color.onSurfaceSoft
497
509
  }),
498
510
  children: t
499
511
  }
500
512
  ),
501
- o.map((i) => /* @__PURE__ */ e(
502
- h,
513
+ o.map((a) => /* @__PURE__ */ r(
514
+ m,
503
515
  {
504
516
  variant: "body2",
505
- sx: (s) => ({ color: s.vietri.color.onSurfaceSoft }),
506
- children: i
517
+ sx: (p) => ({ color: p.vietri.color.onSurfaceSoft }),
518
+ children: a
507
519
  },
508
- i
520
+ a
509
521
  ))
510
522
  ] }),
511
- /* @__PURE__ */ d(b, { spacing: 2, alignItems: { xs: "flex-start", sm: "flex-end" }, children: [
512
- l.length > 0 && /* @__PURE__ */ e(p, { component: "nav", "aria-label": n, children: /* @__PURE__ */ e(
513
- b,
523
+ /* @__PURE__ */ d(x, { spacing: 2, alignItems: { xs: "flex-start", sm: "flex-end" }, children: [
524
+ i.length > 0 && /* @__PURE__ */ r(s, { component: "nav", "aria-label": n, children: /* @__PURE__ */ r(
525
+ x,
514
526
  {
515
527
  component: "ul",
516
528
  direction: "row",
@@ -518,46 +530,46 @@ function qr({
518
530
  useFlexGap: !0,
519
531
  flexWrap: "wrap",
520
532
  sx: { listStyle: "none", m: 0, p: 0 },
521
- children: l.map((i) => /* @__PURE__ */ e("li", { children: /* @__PURE__ */ d(
522
- S,
533
+ children: i.map((a) => /* @__PURE__ */ r("li", { children: /* @__PURE__ */ d(
534
+ w,
523
535
  {
524
- href: i.href,
536
+ href: a.href,
525
537
  color: "inherit",
526
538
  underline: "always",
527
- target: i.external ? "_blank" : void 0,
528
- rel: i.external ? "noopener noreferrer" : void 0,
539
+ target: a.external ? "_blank" : void 0,
540
+ rel: a.external ? "noopener noreferrer" : void 0,
529
541
  sx: { display: "inline-flex", alignItems: "center", gap: 0.5 },
530
542
  children: [
531
- i.label,
532
- i.external && /* @__PURE__ */ d($, { children: [
533
- /* @__PURE__ */ e(C, { icon: H, size: 14 }),
534
- /* @__PURE__ */ e(N, { children: f })
543
+ a.label,
544
+ a.external && /* @__PURE__ */ d(T, { children: [
545
+ /* @__PURE__ */ r(S, { icon: H, size: 14 }),
546
+ /* @__PURE__ */ r(V, { children: h })
535
547
  ] })
536
548
  ]
537
549
  }
538
- ) }, i.href))
550
+ ) }, a.href))
539
551
  }
540
552
  ) }),
541
- a
553
+ l
542
554
  ] })
543
555
  ]
544
556
  }
545
557
  ),
546
- u && /* @__PURE__ */ d($, { children: [
547
- /* @__PURE__ */ e(
548
- Me,
558
+ u && /* @__PURE__ */ d(T, { children: [
559
+ /* @__PURE__ */ r(
560
+ $e,
549
561
  {
550
- sx: (i) => ({
562
+ sx: (a) => ({
551
563
  my: 3,
552
- borderColor: w(i.vietri.color.onSurface, 0.25)
564
+ borderColor: y(a.vietri.color.onSurface, 0.25)
553
565
  })
554
566
  }
555
567
  ),
556
- /* @__PURE__ */ e(
557
- h,
568
+ /* @__PURE__ */ r(
569
+ m,
558
570
  {
559
571
  variant: "body2",
560
- sx: (i) => ({ color: i.vietri.color.onSurfaceSoft }),
572
+ sx: (a) => ({ color: a.vietri.color.onSurfaceSoft }),
561
573
  children: u
562
574
  }
563
575
  )
@@ -567,17 +579,17 @@ function qr({
567
579
  }
568
580
  );
569
581
  }
570
- function Jr({
571
- title: r,
582
+ function Qr({
583
+ title: e,
572
584
  eyebrow: t,
573
585
  description: o,
574
- level: l = 2,
586
+ level: i = 2,
575
587
  align: n = "left"
576
588
  }) {
577
- const a = `h${l}`;
578
- return /* @__PURE__ */ d(b, { spacing: 1, sx: { textAlign: n, alignItems: n === "center" ? "center" : "flex-start" }, children: [
579
- t && /* @__PURE__ */ e(
580
- h,
589
+ const l = `h${i}`;
590
+ return /* @__PURE__ */ d(x, { spacing: 1, sx: { textAlign: n, alignItems: n === "center" ? "center" : "flex-start" }, children: [
591
+ t && /* @__PURE__ */ r(
592
+ m,
581
593
  {
582
594
  component: "p",
583
595
  variant: "overline",
@@ -586,113 +598,113 @@ function Jr({
586
598
  children: t
587
599
  }
588
600
  ),
589
- /* @__PURE__ */ e(h, { component: a, variant: "h3", children: r }),
590
- o && /* @__PURE__ */ e(h, { variant: "body1", color: "text.secondary", sx: { maxWidth: 680 }, children: o })
601
+ /* @__PURE__ */ r(m, { component: l, variant: "h3", children: e }),
602
+ o && /* @__PURE__ */ r(m, { variant: "body1", color: "text.secondary", sx: { maxWidth: 680 }, children: o })
591
603
  ] });
592
604
  }
593
- function Qr({
594
- label: r,
605
+ function Kr({
606
+ label: e,
595
607
  value: t,
596
608
  onChange: o,
597
- options: l,
609
+ options: i,
598
610
  helperText: n,
599
- disabled: a,
611
+ disabled: l,
600
612
  fullWidth: u,
601
- size: f,
613
+ size: h,
602
614
  id: c
603
615
  }) {
604
- const i = new Map(l.map((s) => [s.value, s]));
605
- return /* @__PURE__ */ e(
606
- Te,
616
+ const a = new Map(i.map((p) => [p.value, p]));
617
+ return /* @__PURE__ */ r(
618
+ Re,
607
619
  {
608
620
  select: !0,
609
621
  id: c,
610
- label: r,
622
+ label: e,
611
623
  value: t,
612
- onChange: (s) => o(s.target.value),
624
+ onChange: (p) => o(p.target.value),
613
625
  helperText: n,
614
- disabled: a,
626
+ disabled: l,
615
627
  fullWidth: u,
616
- size: f,
628
+ size: h,
617
629
  slotProps: {
618
630
  select: {
619
- renderValue: (s) => {
620
- const m = i.get(String(s));
621
- return m ? /* @__PURE__ */ d(p, { component: "span", sx: { display: "inline-flex", alignItems: "center", gap: 1 }, children: [
622
- m.adornment,
623
- m.label
631
+ renderValue: (p) => {
632
+ const f = a.get(String(p));
633
+ return f ? /* @__PURE__ */ d(s, { component: "span", sx: { display: "inline-flex", alignItems: "center", gap: 1 }, children: [
634
+ f.adornment,
635
+ f.label
624
636
  ] }) : "";
625
637
  }
626
638
  }
627
639
  },
628
- children: l.map((s) => /* @__PURE__ */ d(je, { value: s.value, sx: { gap: 1 }, children: [
629
- s.adornment,
630
- s.label,
631
- s.count !== void 0 && /* @__PURE__ */ e(h, { component: "span", variant: "caption", color: "text.secondary", sx: { ml: "auto", pl: 2 }, children: s.count })
632
- ] }, s.value))
640
+ children: i.map((p) => /* @__PURE__ */ d(Ve, { value: p.value, sx: { gap: 1 }, children: [
641
+ p.adornment,
642
+ p.label,
643
+ p.count !== void 0 && /* @__PURE__ */ r(m, { component: "span", variant: "caption", color: "text.secondary", sx: { ml: "auto", pl: 2 }, children: p.count })
644
+ ] }, p.value))
633
645
  }
634
646
  );
635
647
  }
636
- function Kr({
637
- open: r,
648
+ function Zr({
649
+ open: e,
638
650
  onClose: t,
639
651
  title: o,
640
- description: l,
652
+ description: i,
641
653
  children: n,
642
- actions: a,
654
+ actions: l,
643
655
  closeLabel: u = "Close",
644
- maxWidth: f = "sm"
656
+ maxWidth: h = "sm"
645
657
  }) {
646
- const c = E(), i = E();
658
+ const c = I(), a = I();
647
659
  return /* @__PURE__ */ d(
648
- We,
660
+ Me,
649
661
  {
650
- open: r,
662
+ open: e,
651
663
  onClose: t,
652
664
  fullWidth: !0,
653
- maxWidth: f,
665
+ maxWidth: h,
654
666
  "aria-labelledby": c,
655
- "aria-describedby": l ? i : void 0,
667
+ "aria-describedby": i ? a : void 0,
656
668
  children: [
657
- /* @__PURE__ */ e(Ie, { id: c, sx: { pr: 7 }, children: o }),
658
- /* @__PURE__ */ e(
659
- B,
669
+ /* @__PURE__ */ r(We, { id: c, sx: { pr: 7 }, children: o }),
670
+ /* @__PURE__ */ r(
671
+ D,
660
672
  {
661
673
  "aria-label": u,
662
674
  onClick: t,
663
675
  sx: { position: "absolute", top: 8, right: 8 },
664
- children: /* @__PURE__ */ e(C, { icon: L })
676
+ children: /* @__PURE__ */ r(S, { icon: P })
665
677
  }
666
678
  ),
667
- /* @__PURE__ */ d(De, { children: [
668
- l && /* @__PURE__ */ e(Ee, { id: i, sx: { mb: n ? 2 : 0 }, children: l }),
679
+ /* @__PURE__ */ d(Ee, { children: [
680
+ i && /* @__PURE__ */ r(Ie, { id: a, sx: { mb: n ? 2 : 0 }, children: i }),
669
681
  n
670
682
  ] }),
671
- a && /* @__PURE__ */ e(Ae, { sx: { px: 3, pb: 2 }, children: a })
683
+ l && /* @__PURE__ */ r(Ae, { sx: { px: 3, pb: 2 }, children: l })
672
684
  ]
673
685
  }
674
686
  );
675
687
  }
676
- function Zr({
677
- open: r,
688
+ function et({
689
+ open: e,
678
690
  onClose: t,
679
691
  title: o,
680
- eyebrow: l,
692
+ eyebrow: i,
681
693
  children: n,
682
- footer: a,
694
+ footer: l,
683
695
  anchor: u = "right",
684
- width: f = 420,
696
+ width: h = 420,
685
697
  closeLabel: c = "Close"
686
698
  }) {
687
- const i = E();
688
- return /* @__PURE__ */ e(re, { anchor: u, open: r, onClose: t, children: /* @__PURE__ */ d(
689
- p,
699
+ const a = I();
700
+ return /* @__PURE__ */ r(te, { anchor: u, open: e, onClose: t, children: /* @__PURE__ */ d(
701
+ s,
690
702
  {
691
703
  role: "dialog",
692
704
  "aria-modal": "true",
693
- "aria-labelledby": i,
705
+ "aria-labelledby": a,
694
706
  sx: {
695
- width: { xs: "100vw", sm: f },
707
+ width: { xs: "100vw", sm: h },
696
708
  maxWidth: "100vw",
697
709
  height: "100%",
698
710
  display: "flex",
@@ -700,52 +712,52 @@ function Zr({
700
712
  },
701
713
  children: [
702
714
  /* @__PURE__ */ d(
703
- b,
715
+ x,
704
716
  {
705
717
  direction: "row",
706
718
  justifyContent: "space-between",
707
719
  alignItems: "center",
708
720
  sx: { p: 3, pb: 1 },
709
721
  children: [
710
- /* @__PURE__ */ e(h, { component: "p", variant: "overline", color: "primary.main", children: l }),
711
- /* @__PURE__ */ e(B, { "aria-label": c, onClick: t, edge: "end", children: /* @__PURE__ */ e(C, { icon: L }) })
722
+ /* @__PURE__ */ r(m, { component: "p", variant: "overline", color: "primary.main", children: i }),
723
+ /* @__PURE__ */ r(D, { "aria-label": c, onClick: t, edge: "end", children: /* @__PURE__ */ r(S, { icon: P }) })
712
724
  ]
713
725
  }
714
726
  ),
715
- /* @__PURE__ */ d(p, { sx: { px: 3, pb: 2, flex: 1, overflowY: "auto" }, tabIndex: 0, children: [
716
- /* @__PURE__ */ e(h, { id: i, component: "h2", variant: "h4", sx: { mb: 2 }, children: o }),
727
+ /* @__PURE__ */ d(s, { sx: { px: 3, pb: 2, flex: 1, overflowY: "auto" }, tabIndex: 0, children: [
728
+ /* @__PURE__ */ r(m, { id: a, component: "h2", variant: "h4", sx: { mb: 2 }, children: o }),
717
729
  n
718
730
  ] }),
719
- a && /* @__PURE__ */ e(p, { sx: { p: 3, borderTop: 1, borderColor: "divider" }, children: a })
731
+ l && /* @__PURE__ */ r(s, { sx: { p: 3, borderTop: 1, borderColor: "divider" }, children: l })
720
732
  ]
721
733
  }
722
734
  ) });
723
735
  }
724
- function et({
725
- label: r,
736
+ function rt({
737
+ label: e,
726
738
  value: t,
727
739
  copyLabel: o = "Copy",
728
- copiedLabel: l = "Copied!",
740
+ copiedLabel: i = "Copied!",
729
741
  errorLabel: n = "Could not copy",
730
- copiedDuration: a = 2e3
742
+ copiedDuration: l = 2e3
731
743
  }) {
732
- const [u, f] = M("idle"), c = I(void 0);
733
- q(() => () => clearTimeout(c.current), []);
734
- async function i() {
744
+ const [u, h] = $("idle"), c = W(void 0);
745
+ J(() => () => clearTimeout(c.current), []);
746
+ async function a() {
735
747
  try {
736
- await navigator.clipboard.writeText(t), f("copied");
748
+ await navigator.clipboard.writeText(t), h("copied");
737
749
  } catch {
738
- f("error");
750
+ h("error");
739
751
  }
740
- clearTimeout(c.current), c.current = setTimeout(() => f("idle"), a);
752
+ clearTimeout(c.current), c.current = setTimeout(() => h("idle"), l);
741
753
  }
742
- return /* @__PURE__ */ d(b, { spacing: 1.5, children: [
743
- /* @__PURE__ */ e(h, { component: "p", variant: "overline", color: "text.secondary", children: r }),
744
- /* @__PURE__ */ e(
745
- p,
754
+ return /* @__PURE__ */ d(x, { spacing: 1.5, children: [
755
+ /* @__PURE__ */ r(m, { component: "p", variant: "overline", color: "text.secondary", children: e }),
756
+ /* @__PURE__ */ r(
757
+ s,
746
758
  {
747
759
  role: "region",
748
- "aria-label": r,
760
+ "aria-label": e,
749
761
  tabIndex: 0,
750
762
  sx: {
751
763
  overflowX: "auto",
@@ -758,26 +770,26 @@ function et({
758
770
  fontSize: "0.8125rem",
759
771
  whiteSpace: "pre"
760
772
  },
761
- children: /* @__PURE__ */ e("code", { children: t })
773
+ children: /* @__PURE__ */ r("code", { children: t })
762
774
  }
763
775
  ),
764
- /* @__PURE__ */ e(
765
- z,
776
+ /* @__PURE__ */ r(
777
+ O,
766
778
  {
767
- onClick: i,
768
- startIcon: /* @__PURE__ */ e(C, { icon: u === "copied" ? J : Z }),
779
+ onClick: a,
780
+ startIcon: /* @__PURE__ */ r(S, { icon: u === "copied" ? Q : ee }),
769
781
  fullWidth: !0,
770
- children: u === "copied" ? l : o
782
+ children: u === "copied" ? i : o
771
783
  }
772
784
  ),
773
- /* @__PURE__ */ e(N, { role: "status", "aria-live": "polite", children: u === "copied" ? l : u === "error" ? n : "" })
785
+ /* @__PURE__ */ r(V, { role: "status", "aria-live": "polite", children: u === "copied" ? i : u === "error" ? n : "" })
774
786
  ] });
775
787
  }
776
- function rt({ href: r, children: t = "Skip to content" }) {
777
- return /* @__PURE__ */ e(
778
- S,
788
+ function tt({ href: e, children: t = "Skip to content" }) {
789
+ return /* @__PURE__ */ r(
790
+ w,
779
791
  {
780
- href: r,
792
+ href: e,
781
793
  sx: (o) => ({
782
794
  position: "fixed",
783
795
  top: o.spacing(1),
@@ -798,92 +810,118 @@ function rt({ href: r, children: t = "Skip to content" }) {
798
810
  }
799
811
  );
800
812
  }
801
- function tt({
802
- title: r,
813
+ function ot({
814
+ title: e,
803
815
  eyebrow: t,
804
816
  description: o,
805
- actions: l,
817
+ actions: i,
806
818
  level: n = 1,
807
- align: a = "left",
808
- image: u,
809
- imagePosition: f = "center"
819
+ align: l = "left",
820
+ accentRule: u = !1,
821
+ image: h,
822
+ imagePosition: c = "center"
810
823
  }) {
811
- const c = `h${n}`, i = a === "center", s = !!u;
812
- return /* @__PURE__ */ e(
813
- p,
824
+ const a = `h${n}`, p = l === "center", f = !!h;
825
+ return /* @__PURE__ */ r(
826
+ s,
814
827
  {
815
828
  component: "section",
816
- sx: (m) => {
817
- const g = m.vietri.color.scrim, x = m.vietri.gradient.surface, v = `linear-gradient(0deg, ${g} 0%, ${w(g, 0)} 28%)`, V = `url(${JSON.stringify(u ?? "")})`;
829
+ sx: (g) => {
830
+ const v = g.vietri.color.scrim, b = g.vietri.gradient.surface, G = `linear-gradient(0deg, ${v} 0%, ${y(v, 0)} 18%)`, U = `url(${JSON.stringify(h ?? "")})`;
818
831
  return {
819
832
  display: "flex",
820
833
  alignItems: "center",
821
834
  py: { xs: 6, md: 10 },
822
- ...s && { minHeight: { xs: 440, md: 600 } },
823
- color: m.vietri.color.onSurface,
824
- ...s ? {
835
+ ...f && { minHeight: { xs: 440, md: 600 } },
836
+ color: g.vietri.color.onSurface,
837
+ ...f ? {
825
838
  // Layers, from top to bottom: dark layer, bottom fade, photo, surface.
826
839
  backgroundImage: {
827
- xs: `linear-gradient(${w(g, 0.88)}, ${w(g, 0.88)}), ${v}, ${V}, ${x}`,
828
- md: `linear-gradient(90deg, ${w(g, 0.92)} 0%, ${w(g, 0.86)} 62%, ${w(g, 0.25)} 100%), ${v}, ${V}, ${x}`
840
+ xs: `linear-gradient(${y(v, 0.8)}, ${y(v, 0.8)}), ${G}, ${U}, ${b}`,
841
+ md: `linear-gradient(90deg, ${y(v, 0.84)} 0%, ${y(v, 0.74)} 62%, ${y(v, 0.1)} 100%), ${G}, ${U}, ${b}`
829
842
  },
830
843
  backgroundSize: "cover",
831
- backgroundPosition: f,
844
+ backgroundPosition: c,
832
845
  backgroundRepeat: "no-repeat"
833
- } : { background: x },
846
+ } : { background: b },
834
847
  // Focus ring and secondary buttons that stay visible on a dark surface.
835
848
  "& a:focus-visible, & button:focus-visible": {
836
849
  outline: "2px solid",
837
- outlineColor: m.vietri.color.onSurface,
850
+ outlineColor: g.vietri.color.onSurface,
838
851
  outlineOffset: 3
839
852
  },
840
853
  "& .MuiButton-outlined, & .MuiButton-text": {
841
854
  color: "inherit",
842
855
  borderColor: "currentColor"
856
+ },
857
+ // Over the photo the hover is a white veil, not the orange of the page.
858
+ "& .MuiButton-outlined:hover, & .MuiButton-text:hover": {
859
+ borderColor: "currentColor",
860
+ backgroundColor: y(g.vietri.color.onSurface, 0.14)
843
861
  }
844
862
  };
845
863
  },
846
- children: /* @__PURE__ */ e(j, { maxWidth: "lg", sx: { width: "100%" }, children: /* @__PURE__ */ d(
847
- b,
864
+ children: /* @__PURE__ */ r(j, { maxWidth: "lg", sx: { width: "100%" }, children: /* @__PURE__ */ d(
865
+ x,
848
866
  {
849
867
  spacing: 2,
850
868
  sx: {
851
- alignItems: i ? "center" : "flex-start",
852
- textAlign: a,
853
- // With an image the text stays in the left 60%, where the dark layer is strongest.
854
- ...s && { maxWidth: { md: "60%" }, ...i && { mx: "auto" } }
869
+ alignItems: p ? "center" : "flex-start",
870
+ textAlign: l,
871
+ // With an image the text stays in the left 60%, where the dark layer is at its strongest.
872
+ ...f && { maxWidth: { md: "60%" }, ...p && { mx: "auto" } }
855
873
  },
856
874
  children: [
857
- t && /* @__PURE__ */ e(
858
- h,
875
+ t && /* @__PURE__ */ r(
876
+ m,
859
877
  {
860
878
  component: "p",
861
879
  variant: "overline",
862
- sx: (m) => ({ color: m.vietri.color.onSurfaceSoft }),
880
+ sx: (g) => ({ color: g.vietri.color.onSurfaceSoft }),
863
881
  children: t
864
882
  }
865
883
  ),
866
- /* @__PURE__ */ e(h, { component: c, variant: "h2", sx: { maxWidth: 900 }, children: r }),
867
- o && /* @__PURE__ */ e(
868
- h,
884
+ /* @__PURE__ */ r(
885
+ m,
886
+ {
887
+ component: a,
888
+ variant: "h2",
889
+ sx: { maxWidth: 900 },
890
+ children: e
891
+ }
892
+ ),
893
+ u && /* @__PURE__ */ r(
894
+ s,
895
+ {
896
+ "aria-hidden": "true",
897
+ sx: (g) => ({
898
+ width: 72,
899
+ height: 6,
900
+ borderRadius: 3,
901
+ bgcolor: g.vietri.color.accentLarge ?? g.palette.primary.main
902
+ })
903
+ }
904
+ ),
905
+ o && /* @__PURE__ */ r(
906
+ m,
869
907
  {
870
908
  variant: "body1",
871
- sx: (m) => ({
909
+ sx: (g) => ({
872
910
  maxWidth: 680,
873
- color: m.vietri.color.onSurfaceSoft
911
+ color: g.vietri.color.onSurfaceSoft
874
912
  }),
875
913
  children: o
876
914
  }
877
915
  ),
878
- l && /* @__PURE__ */ e(
879
- b,
916
+ i && /* @__PURE__ */ r(
917
+ x,
880
918
  {
881
919
  direction: "row",
882
920
  spacing: 2,
883
921
  useFlexGap: !0,
884
922
  flexWrap: "wrap",
885
- sx: { pt: 2, justifyContent: i ? "center" : "flex-start" },
886
- children: l
923
+ sx: { pt: 2, justifyContent: p ? "center" : "flex-start" },
924
+ children: i
887
925
  }
888
926
  )
889
927
  ]
@@ -892,17 +930,17 @@ function tt({
892
930
  }
893
931
  );
894
932
  }
895
- function ot({
896
- icon: r,
933
+ function it({
934
+ icon: e,
897
935
  title: t,
898
936
  description: o,
899
- level: l = 3,
937
+ level: i = 3,
900
938
  children: n
901
939
  }) {
902
- const a = `h${l}`;
903
- return /* @__PURE__ */ e(A, { sx: { height: "100%" }, children: /* @__PURE__ */ d(D, { children: [
904
- /* @__PURE__ */ e(
905
- p,
940
+ const l = `h${i}`;
941
+ return /* @__PURE__ */ r(A, { sx: { height: "100%" }, children: /* @__PURE__ */ d(E, { children: [
942
+ /* @__PURE__ */ r(
943
+ s,
906
944
  {
907
945
  sx: (u) => ({
908
946
  display: "grid",
@@ -914,18 +952,18 @@ function ot({
914
952
  bgcolor: u.vietri.color.chip,
915
953
  color: u.palette.primary.main
916
954
  }),
917
- children: /* @__PURE__ */ e(C, { icon: r, size: 22 })
955
+ children: /* @__PURE__ */ r(S, { icon: e, size: 22 })
918
956
  }
919
957
  ),
920
- /* @__PURE__ */ e(h, { component: a, variant: "h6", gutterBottom: !0, children: t }),
921
- o && /* @__PURE__ */ e(h, { variant: "body2", color: "text.secondary", children: o }),
922
- n && /* @__PURE__ */ e(p, { sx: { mt: 2 }, children: n })
958
+ /* @__PURE__ */ r(m, { component: l, variant: "h6", gutterBottom: !0, children: t }),
959
+ o && /* @__PURE__ */ r(m, { variant: "body2", color: "text.secondary", children: o }),
960
+ n && /* @__PURE__ */ r(s, { sx: { mt: 2 }, children: n })
923
961
  ] }) });
924
962
  }
925
- function it({ steps: r, level: t = 3, ariaLabel: o }) {
926
- const l = `h${t}`;
927
- return /* @__PURE__ */ e(
928
- p,
963
+ function nt({ steps: e, level: t = 3, ariaLabel: o }) {
964
+ const i = `h${t}`;
965
+ return /* @__PURE__ */ r(
966
+ s,
929
967
  {
930
968
  component: "ol",
931
969
  role: "list",
@@ -938,12 +976,12 @@ function it({ steps: r, level: t = 3, ariaLabel: o }) {
938
976
  gap: 3,
939
977
  gridTemplateColumns: {
940
978
  xs: "1fr",
941
- md: `repeat(${Math.max(r.length, 1)}, minmax(0, 1fr))`
979
+ md: `repeat(${Math.max(e.length, 1)}, minmax(0, 1fr))`
942
980
  }
943
981
  },
944
- children: r.map((n, a) => /* @__PURE__ */ e("li", { children: /* @__PURE__ */ d(b, { spacing: 1, children: [
945
- /* @__PURE__ */ e(
946
- p,
982
+ children: e.map((n, l) => /* @__PURE__ */ r("li", { children: /* @__PURE__ */ d(x, { spacing: 1, children: [
983
+ /* @__PURE__ */ r(
984
+ s,
947
985
  {
948
986
  "aria-hidden": "true",
949
987
  sx: (u) => ({
@@ -956,34 +994,34 @@ function it({ steps: r, level: t = 3, ariaLabel: o }) {
956
994
  bgcolor: u.palette.primary.main,
957
995
  color: u.palette.primary.contrastText
958
996
  }),
959
- children: a + 1
997
+ children: l + 1
960
998
  }
961
999
  ),
962
- /* @__PURE__ */ e(h, { component: l, variant: "h6", children: n.title }),
963
- n.description && /* @__PURE__ */ e(h, { variant: "body2", color: "text.secondary", children: n.description })
1000
+ /* @__PURE__ */ r(m, { component: i, variant: "h6", children: n.title }),
1001
+ n.description && /* @__PURE__ */ r(m, { variant: "body2", color: "text.secondary", children: n.description })
964
1002
  ] }) }, n.title))
965
1003
  }
966
1004
  );
967
1005
  }
968
- function nt({ entries: r, level: t = 3, ariaLabel: o }) {
969
- const l = `h${t}`;
970
- return /* @__PURE__ */ e(
971
- p,
1006
+ function at({ entries: e, level: t = 3, ariaLabel: o }) {
1007
+ const i = `h${t}`;
1008
+ return /* @__PURE__ */ r(
1009
+ s,
972
1010
  {
973
1011
  component: "ol",
974
1012
  role: "list",
975
1013
  "aria-label": o,
976
1014
  sx: { listStyle: "none", m: 0, p: 0 },
977
- children: r.map((n) => /* @__PURE__ */ d(
978
- p,
1015
+ children: e.map((n) => /* @__PURE__ */ d(
1016
+ s,
979
1017
  {
980
1018
  component: "li",
981
1019
  id: n.id,
982
- sx: (a) => ({
1020
+ sx: (l) => ({
983
1021
  position: "relative",
984
1022
  pl: 4,
985
1023
  pb: 5,
986
- scrollMarginTop: a.spacing(10),
1024
+ scrollMarginTop: l.spacing(10),
987
1025
  // Vertical line between dots.
988
1026
  "&::before": {
989
1027
  content: '""',
@@ -992,32 +1030,32 @@ function nt({ entries: r, level: t = 3, ariaLabel: o }) {
992
1030
  top: 14,
993
1031
  bottom: 0,
994
1032
  width: 2,
995
- bgcolor: a.palette.divider
1033
+ bgcolor: l.palette.divider
996
1034
  },
997
1035
  "&:last-of-type": { pb: 0 },
998
1036
  "&:last-of-type::before": { display: "none" }
999
1037
  }),
1000
1038
  children: [
1001
- /* @__PURE__ */ e(
1002
- p,
1039
+ /* @__PURE__ */ r(
1040
+ s,
1003
1041
  {
1004
1042
  "aria-hidden": "true",
1005
- sx: (a) => ({
1043
+ sx: (l) => ({
1006
1044
  position: "absolute",
1007
1045
  left: 0,
1008
1046
  top: 6,
1009
1047
  width: 16,
1010
1048
  height: 16,
1011
1049
  borderRadius: "50%",
1012
- bgcolor: a.palette.primary.main,
1013
- border: `3px solid ${a.palette.background.default}`,
1050
+ bgcolor: l.palette.primary.main,
1051
+ border: `3px solid ${l.palette.background.default}`,
1014
1052
  boxSizing: "border-box"
1015
1053
  })
1016
1054
  }
1017
1055
  ),
1018
- /* @__PURE__ */ e(h, { component: l, variant: "h5", children: n.label }),
1019
- n.description && /* @__PURE__ */ e(h, { variant: "body2", color: "text.secondary", sx: { mt: 0.5 }, children: n.description }),
1020
- n.content && /* @__PURE__ */ e(p, { sx: { mt: 2 }, children: n.content })
1056
+ /* @__PURE__ */ r(m, { component: i, variant: "h5", children: n.label }),
1057
+ n.description && /* @__PURE__ */ r(m, { variant: "body2", color: "text.secondary", sx: { mt: 0.5 }, children: n.description }),
1058
+ n.content && /* @__PURE__ */ r(s, { sx: { mt: 2 }, children: n.content })
1021
1059
  ]
1022
1060
  },
1023
1061
  n.id
@@ -1025,7 +1063,7 @@ function nt({ entries: r, level: t = 3, ariaLabel: o }) {
1025
1063
  }
1026
1064
  );
1027
1065
  }
1028
- const X = {
1066
+ const Y = {
1029
1067
  position: "static",
1030
1068
  color: "inherit",
1031
1069
  font: "inherit",
@@ -1037,56 +1075,56 @@ const X = {
1037
1075
  inset: 0
1038
1076
  }
1039
1077
  };
1040
- function at({
1041
- name: r,
1078
+ function lt({
1079
+ name: e,
1042
1080
  subtitle: t,
1043
1081
  bio: o,
1044
- tags: l = [],
1082
+ tags: i = [],
1045
1083
  href: n,
1046
- onClick: a,
1084
+ onClick: l,
1047
1085
  level: u = 3,
1048
- bioLines: f = 3
1086
+ bioLines: h = 3
1049
1087
  }) {
1050
- const c = `h${u}`, i = !!(n || a);
1051
- return /* @__PURE__ */ e(
1088
+ const c = `h${u}`, a = !!(n || l);
1089
+ return /* @__PURE__ */ r(
1052
1090
  A,
1053
1091
  {
1054
- sx: (m) => ({
1092
+ sx: (f) => ({
1055
1093
  position: "relative",
1056
1094
  height: "100%",
1057
- ...i && { "&:hover": { borderColor: m.palette.primary.main } },
1095
+ ...a && { "&:hover": { borderColor: f.palette.primary.main } },
1058
1096
  // One focus ring for the whole card, instead of one around the name.
1059
1097
  "&:has(:focus-visible)": {
1060
- outline: `2px solid ${m.palette.primary.main}`,
1098
+ outline: `2px solid ${f.palette.primary.main}`,
1061
1099
  outlineOffset: 2
1062
1100
  },
1063
1101
  "& a:focus-visible, & button:focus-visible": { outline: "none" }
1064
1102
  }),
1065
- children: /* @__PURE__ */ d(D, { children: [
1066
- /* @__PURE__ */ e(h, { component: c, variant: "h6", children: n ? /* @__PURE__ */ e(S, { href: n, underline: "none", sx: X, children: r }) : a ? /* @__PURE__ */ e(S, { component: "button", type: "button", onClick: a, underline: "none", sx: X, children: r }) : r }),
1067
- t && /* @__PURE__ */ e(h, { variant: "body2", color: "text.secondary", children: t }),
1068
- o && /* @__PURE__ */ e(
1069
- h,
1103
+ children: /* @__PURE__ */ d(E, { children: [
1104
+ /* @__PURE__ */ r(m, { component: c, variant: "h6", children: n ? /* @__PURE__ */ r(w, { href: n, underline: "none", sx: Y, children: e }) : l ? /* @__PURE__ */ r(w, { component: "button", type: "button", onClick: l, underline: "none", sx: Y, children: e }) : e }),
1105
+ t && /* @__PURE__ */ r(m, { variant: "body2", color: "text.secondary", children: t }),
1106
+ o && /* @__PURE__ */ r(
1107
+ m,
1070
1108
  {
1071
1109
  variant: "body2",
1072
1110
  sx: {
1073
1111
  mt: 1,
1074
1112
  display: "-webkit-box",
1075
- WebkitLineClamp: f,
1113
+ WebkitLineClamp: h,
1076
1114
  WebkitBoxOrient: "vertical",
1077
1115
  overflow: "hidden"
1078
1116
  },
1079
1117
  children: o
1080
1118
  }
1081
1119
  ),
1082
- l.length > 0 && /* @__PURE__ */ e(b, { direction: "row", spacing: 1, useFlexGap: !0, flexWrap: "wrap", sx: { mt: 2 }, children: l.map(
1083
- (m) => m.color ? /* @__PURE__ */ e(Ue, { label: m.label, color: m.color }, m.label) : /* @__PURE__ */ e(Y, { label: m.label, size: "small" }, m.label)
1120
+ i.length > 0 && /* @__PURE__ */ r(x, { direction: "row", spacing: 1, useFlexGap: !0, flexWrap: "wrap", sx: { mt: 2 }, children: i.map(
1121
+ (f) => f.color ? /* @__PURE__ */ r(Xe, { label: f.label, color: f.color }, f.label) : /* @__PURE__ */ r(q, { label: f.label, size: "small" }, f.label)
1084
1122
  ) })
1085
1123
  ] })
1086
1124
  }
1087
1125
  );
1088
1126
  }
1089
- const W = {
1127
+ const M = {
1090
1128
  position: "static",
1091
1129
  color: "inherit",
1092
1130
  font: "inherit",
@@ -1097,31 +1135,31 @@ const W = {
1097
1135
  position: "absolute",
1098
1136
  inset: 0
1099
1137
  }
1100
- }, Xe = (r) => ({
1138
+ }, Ye = (e) => ({
1101
1139
  "&:has(:focus-visible)": {
1102
- outline: `2px solid ${r.palette.primary.main}`,
1140
+ outline: `2px solid ${e.palette.primary.main}`,
1103
1141
  outlineOffset: 2
1104
1142
  },
1105
1143
  "& a:focus-visible, & button:focus-visible": { outline: "none" }
1106
1144
  });
1107
- function lt({
1108
- title: r,
1145
+ function ct({
1146
+ title: e,
1109
1147
  subtitle: t,
1110
1148
  meta: o,
1111
- imageUrl: l,
1149
+ imageUrl: i,
1112
1150
  duration: n,
1113
- badge: a,
1151
+ badge: l,
1114
1152
  href: u,
1115
- onClick: f,
1153
+ onClick: h,
1116
1154
  level: c = 3,
1117
- playIcon: i = !0,
1118
- aspectRatio: s = "16 / 9"
1155
+ playIcon: a = !0,
1156
+ aspectRatio: p = "16 / 9"
1119
1157
  }) {
1120
- const m = `h${c}`, g = !!(u || f);
1158
+ const f = `h${c}`, g = !!(u || h);
1121
1159
  return /* @__PURE__ */ d(
1122
1160
  A,
1123
1161
  {
1124
- sx: (v) => ({
1162
+ sx: (b) => ({
1125
1163
  position: "relative",
1126
1164
  height: "100%",
1127
1165
  overflow: "hidden",
@@ -1129,30 +1167,30 @@ function lt({
1129
1167
  ...g && {
1130
1168
  "&:hover": {
1131
1169
  transform: "scale(1.03)",
1132
- boxShadow: v.vietri.shadow.lg,
1133
- borderColor: v.palette.primary.main
1170
+ boxShadow: b.vietri.shadow.lg,
1171
+ borderColor: b.palette.primary.main
1134
1172
  },
1135
1173
  "&:hover .media-card-image": { transform: "scale(1.06)" }
1136
1174
  },
1137
- ...Xe(v)
1175
+ ...Ye(b)
1138
1176
  }),
1139
1177
  children: [
1140
1178
  /* @__PURE__ */ d(
1141
- p,
1179
+ s,
1142
1180
  {
1143
- sx: (v) => ({
1181
+ sx: (b) => ({
1144
1182
  position: "relative",
1145
- aspectRatio: s,
1183
+ aspectRatio: p,
1146
1184
  overflow: "hidden",
1147
- bgcolor: v.vietri.color.chip
1185
+ bgcolor: b.vietri.color.chip
1148
1186
  }),
1149
1187
  children: [
1150
- l && /* @__PURE__ */ e(
1151
- p,
1188
+ i && /* @__PURE__ */ r(
1189
+ s,
1152
1190
  {
1153
1191
  component: "img",
1154
1192
  className: "media-card-image",
1155
- src: l,
1193
+ src: i,
1156
1194
  alt: "",
1157
1195
  loading: "lazy",
1158
1196
  sx: {
@@ -1164,8 +1202,8 @@ function lt({
1164
1202
  }
1165
1203
  }
1166
1204
  ),
1167
- i && /* @__PURE__ */ e(
1168
- p,
1205
+ a && /* @__PURE__ */ r(
1206
+ s,
1169
1207
  {
1170
1208
  "aria-hidden": "true",
1171
1209
  sx: {
@@ -1181,13 +1219,13 @@ function lt({
1181
1219
  bgcolor: "rgba(0, 0, 0, 0.8)",
1182
1220
  color: "#FFFFFF"
1183
1221
  },
1184
- children: /* @__PURE__ */ e(C, { icon: P, size: 22 })
1222
+ children: /* @__PURE__ */ r(S, { icon: L, size: 22 })
1185
1223
  }
1186
1224
  ),
1187
- a && /* @__PURE__ */ e(
1188
- p,
1225
+ l && /* @__PURE__ */ r(
1226
+ s,
1189
1227
  {
1190
- sx: (v) => ({
1228
+ sx: (b) => ({
1191
1229
  position: "absolute",
1192
1230
  top: 8,
1193
1231
  left: 8,
@@ -1196,14 +1234,14 @@ function lt({
1196
1234
  borderRadius: 1,
1197
1235
  fontSize: "0.75rem",
1198
1236
  fontWeight: 600,
1199
- bgcolor: v.vietri.color.action[0],
1200
- color: v.vietri.color.onAction
1237
+ bgcolor: b.vietri.color.action[0],
1238
+ color: b.vietri.color.onAction
1201
1239
  }),
1202
- children: a
1240
+ children: l
1203
1241
  }
1204
1242
  ),
1205
- n && /* @__PURE__ */ e(
1206
- p,
1243
+ n && /* @__PURE__ */ r(
1244
+ s,
1207
1245
  {
1208
1246
  sx: {
1209
1247
  position: "absolute",
@@ -1223,56 +1261,56 @@ function lt({
1223
1261
  ]
1224
1262
  }
1225
1263
  ),
1226
- /* @__PURE__ */ d(D, { children: [
1227
- o && /* @__PURE__ */ e(h, { component: "p", variant: "overline", color: "text.secondary", children: o }),
1228
- /* @__PURE__ */ e(h, { component: m, variant: "h6", children: u ? /* @__PURE__ */ e(S, { href: u, underline: "none", sx: W, children: r }) : f ? /* @__PURE__ */ e(S, { component: "button", type: "button", onClick: f, underline: "none", sx: W, children: r }) : r }),
1229
- t && /* @__PURE__ */ e(h, { variant: "body2", color: "text.secondary", children: t })
1264
+ /* @__PURE__ */ d(E, { children: [
1265
+ o && /* @__PURE__ */ r(m, { component: "p", variant: "overline", color: "text.secondary", children: o }),
1266
+ /* @__PURE__ */ r(m, { component: f, variant: "h6", children: u ? /* @__PURE__ */ r(w, { href: u, underline: "none", sx: M, children: e }) : h ? /* @__PURE__ */ r(w, { component: "button", type: "button", onClick: h, underline: "none", sx: M, children: e }) : e }),
1267
+ t && /* @__PURE__ */ r(m, { variant: "body2", color: "text.secondary", children: t })
1230
1268
  ] })
1231
1269
  ]
1232
1270
  }
1233
1271
  );
1234
1272
  }
1235
- function ct({
1236
- title: r,
1273
+ function dt({
1274
+ title: e,
1237
1275
  children: t,
1238
1276
  level: o = 2,
1239
- itemWidth: l = 280,
1277
+ itemWidth: i = 280,
1240
1278
  previousLabel: n = "Scroll left",
1241
- nextLabel: a = "Scroll right",
1279
+ nextLabel: l = "Scroll right",
1242
1280
  action: u
1243
1281
  }) {
1244
- const f = `h${o}`, c = E(), i = I(null), s = ne.toArray(t);
1245
- function m(g) {
1246
- const x = i.current;
1247
- if (!x) return;
1248
- const v = typeof window.matchMedia == "function" && window.matchMedia("(prefers-reduced-motion: reduce)").matches;
1249
- x.scrollBy?.({
1250
- left: g * x.clientWidth * 0.8,
1251
- behavior: v ? "auto" : "smooth"
1282
+ const h = `h${o}`, c = I(), a = W(null), p = ae.toArray(t);
1283
+ function f(g) {
1284
+ const v = a.current;
1285
+ if (!v) return;
1286
+ const b = typeof window.matchMedia == "function" && window.matchMedia("(prefers-reduced-motion: reduce)").matches;
1287
+ v.scrollBy?.({
1288
+ left: g * v.clientWidth * 0.8,
1289
+ behavior: b ? "auto" : "smooth"
1252
1290
  });
1253
1291
  }
1254
- return /* @__PURE__ */ d(p, { component: "section", "aria-labelledby": c, sx: { mb: 4 }, children: [
1292
+ return /* @__PURE__ */ d(s, { component: "section", "aria-labelledby": c, sx: { mb: 4 }, children: [
1255
1293
  /* @__PURE__ */ d(
1256
- b,
1294
+ x,
1257
1295
  {
1258
1296
  direction: "row",
1259
1297
  justifyContent: "space-between",
1260
1298
  alignItems: "center",
1261
1299
  sx: { mb: 2 },
1262
1300
  children: [
1263
- /* @__PURE__ */ e(h, { id: c, component: f, variant: "h5", children: r }),
1264
- /* @__PURE__ */ d(b, { direction: "row", spacing: 1, alignItems: "center", children: [
1301
+ /* @__PURE__ */ r(m, { id: c, component: h, variant: "h5", children: e }),
1302
+ /* @__PURE__ */ d(x, { direction: "row", spacing: 1, alignItems: "center", children: [
1265
1303
  u,
1266
- /* @__PURE__ */ e(B, { "aria-label": n, onClick: () => m(-1), children: /* @__PURE__ */ e(C, { icon: Q }) }),
1267
- /* @__PURE__ */ e(B, { "aria-label": a, onClick: () => m(1), children: /* @__PURE__ */ e(C, { icon: K }) })
1304
+ /* @__PURE__ */ r(D, { color: "primary", "aria-label": n, onClick: () => f(-1), children: /* @__PURE__ */ r(S, { icon: K }) }),
1305
+ /* @__PURE__ */ r(D, { color: "primary", "aria-label": l, onClick: () => f(1), children: /* @__PURE__ */ r(S, { icon: Z }) })
1268
1306
  ] })
1269
1307
  ]
1270
1308
  }
1271
1309
  ),
1272
- /* @__PURE__ */ e(
1273
- p,
1310
+ /* @__PURE__ */ r(
1311
+ s,
1274
1312
  {
1275
- ref: i,
1313
+ ref: a,
1276
1314
  tabIndex: 0,
1277
1315
  sx: (g) => ({
1278
1316
  overflowX: "auto",
@@ -1280,15 +1318,15 @@ function ct({
1280
1318
  pt: 1.5,
1281
1319
  pb: 2,
1282
1320
  scrollSnapType: "x proximity",
1283
- // A thin scrollbar in the theme's text color, instead of the heavy one of
1284
- // the system. Still visible (it uses the secondary text color), so people
1321
+ // A thin scrollbar in the theme's primary color, instead of the heavy one of
1322
+ // the system. Still visible (it reads against the page), so people
1285
1323
  // who scroll with a mouse can see there is more to the right.
1286
1324
  scrollbarWidth: "thin",
1287
- scrollbarColor: `${g.palette.text.secondary} transparent`,
1325
+ scrollbarColor: `${g.palette.primary.main} transparent`,
1288
1326
  "&::-webkit-scrollbar": { height: 8 },
1289
1327
  "&::-webkit-scrollbar-track": { backgroundColor: "transparent" },
1290
1328
  "&::-webkit-scrollbar-thumb": {
1291
- backgroundColor: g.palette.text.secondary,
1329
+ backgroundColor: g.palette.primary.main,
1292
1330
  borderRadius: 4
1293
1331
  },
1294
1332
  "&:focus-visible": {
@@ -1296,20 +1334,20 @@ function ct({
1296
1334
  outlineOffset: 2
1297
1335
  }
1298
1336
  }),
1299
- children: /* @__PURE__ */ e(
1300
- p,
1337
+ children: /* @__PURE__ */ r(
1338
+ s,
1301
1339
  {
1302
1340
  component: "ul",
1303
1341
  role: "list",
1304
1342
  sx: { listStyle: "none", m: 0, p: 0, display: "flex", gap: 2 },
1305
- children: s.map((g, x) => /* @__PURE__ */ e(
1306
- p,
1343
+ children: p.map((g, v) => /* @__PURE__ */ r(
1344
+ s,
1307
1345
  {
1308
1346
  component: "li",
1309
- sx: { flex: `0 0 ${l}px`, scrollSnapAlign: "start" },
1347
+ sx: { flex: `0 0 ${i}px`, scrollSnapAlign: "start" },
1310
1348
  children: g
1311
1349
  },
1312
- x
1350
+ v
1313
1351
  ))
1314
1352
  }
1315
1353
  )
@@ -1317,23 +1355,23 @@ function ct({
1317
1355
  )
1318
1356
  ] });
1319
1357
  }
1320
- function Ye(r, t, o) {
1321
- const l = new URLSearchParams({ rel: "0", modestbranding: "1" });
1322
- return t && l.set("start", String(Math.floor(t))), o && l.set("autoplay", "1"), `https://www.youtube-nocookie.com/embed/${encodeURIComponent(r)}?${l.toString()}`;
1358
+ function qe(e, t, o) {
1359
+ const i = new URLSearchParams({ rel: "0", modestbranding: "1" });
1360
+ return t && i.set("start", String(Math.floor(t))), o && i.set("autoplay", "1"), `https://www.youtube-nocookie.com/embed/${encodeURIComponent(e)}?${i.toString()}`;
1323
1361
  }
1324
- function dt({
1325
- videoId: r,
1362
+ function st({
1363
+ videoId: e,
1326
1364
  title: t,
1327
1365
  poster: o,
1328
- start: l,
1366
+ start: i,
1329
1367
  lazy: n = !0,
1330
- playLabel: a
1368
+ playLabel: l
1331
1369
  }) {
1332
- const [u, f] = M(!n), c = I(!1), i = I(null);
1333
- return q(() => {
1334
- u && c.current && i.current?.focus();
1335
- }, [u]), /* @__PURE__ */ e(
1336
- p,
1370
+ const [u, h] = $(!n), c = W(!1), a = W(null);
1371
+ return J(() => {
1372
+ u && c.current && a.current?.focus();
1373
+ }, [u]), /* @__PURE__ */ r(
1374
+ s,
1337
1375
  {
1338
1376
  sx: {
1339
1377
  position: "relative",
@@ -1343,11 +1381,11 @@ function dt({
1343
1381
  borderRadius: 2,
1344
1382
  bgcolor: "#000000"
1345
1383
  },
1346
- children: u ? /* @__PURE__ */ e(
1384
+ children: u ? /* @__PURE__ */ r(
1347
1385
  "iframe",
1348
1386
  {
1349
- ref: i,
1350
- src: Ye(r, l, c.current),
1387
+ ref: a,
1388
+ src: qe(e, i, c.current),
1351
1389
  title: t,
1352
1390
  allow: "accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share",
1353
1391
  allowFullScreen: !0,
@@ -1358,9 +1396,9 @@ function dt({
1358
1396
  ) : /* @__PURE__ */ d(
1359
1397
  Ne,
1360
1398
  {
1361
- "aria-label": a ?? `Play video: ${t}`,
1399
+ "aria-label": l ?? `Play video: ${t}`,
1362
1400
  onClick: () => {
1363
- c.current = !0, f(!0);
1401
+ c.current = !0, h(!0);
1364
1402
  },
1365
1403
  sx: {
1366
1404
  position: "absolute",
@@ -1373,8 +1411,8 @@ function dt({
1373
1411
  }
1374
1412
  },
1375
1413
  children: [
1376
- o && /* @__PURE__ */ e(
1377
- p,
1414
+ o && /* @__PURE__ */ r(
1415
+ s,
1378
1416
  {
1379
1417
  component: "img",
1380
1418
  src: o,
@@ -1383,8 +1421,8 @@ function dt({
1383
1421
  sx: { position: "absolute", inset: 0, width: "100%", height: "100%", objectFit: "cover" }
1384
1422
  }
1385
1423
  ),
1386
- /* @__PURE__ */ e(
1387
- p,
1424
+ /* @__PURE__ */ r(
1425
+ s,
1388
1426
  {
1389
1427
  "aria-hidden": "true",
1390
1428
  sx: {
@@ -1397,7 +1435,7 @@ function dt({
1397
1435
  bgcolor: "rgba(0, 0, 0, 0.8)",
1398
1436
  color: "#FFFFFF"
1399
1437
  },
1400
- children: /* @__PURE__ */ e(C, { icon: P, size: 32 })
1438
+ children: /* @__PURE__ */ r(S, { icon: L, size: 32 })
1401
1439
  }
1402
1440
  )
1403
1441
  ]
@@ -1406,54 +1444,54 @@ function dt({
1406
1444
  }
1407
1445
  );
1408
1446
  }
1409
- const qe = (r) => ({
1447
+ const Je = (e) => ({
1410
1448
  "&:has(:focus-visible)": {
1411
- outline: `2px solid ${r.palette.primary.main}`,
1449
+ outline: `2px solid ${e.palette.primary.main}`,
1412
1450
  outlineOffset: -2
1413
1451
  },
1414
1452
  "& a:focus-visible, & button:focus-visible": { outline: "none" }
1415
1453
  });
1416
- function st({
1417
- episodes: r,
1454
+ function pt({
1455
+ episodes: e,
1418
1456
  currentId: t,
1419
1457
  onSelect: o,
1420
- level: l = 3,
1458
+ level: i = 3,
1421
1459
  ariaLabel: n,
1422
- episodeLabel: a = (f) => `Episode ${f}`,
1460
+ episodeLabel: l = (h) => `Episode ${h}`,
1423
1461
  currentLabel: u = "Now playing"
1424
1462
  }) {
1425
- const f = `h${l}`;
1426
- return /* @__PURE__ */ e(
1427
- p,
1463
+ const h = `h${i}`;
1464
+ return /* @__PURE__ */ r(
1465
+ s,
1428
1466
  {
1429
1467
  component: "ol",
1430
1468
  role: "list",
1431
1469
  "aria-label": n,
1432
1470
  sx: { listStyle: "none", m: 0, p: 0 },
1433
- children: r.map((c) => {
1434
- const i = c.id === t, s = !!(o || c.href), m = o ? /* @__PURE__ */ e(
1435
- S,
1471
+ children: e.map((c) => {
1472
+ const a = c.id === t, p = !!(o || c.href), f = o ? /* @__PURE__ */ r(
1473
+ w,
1436
1474
  {
1437
1475
  component: "button",
1438
1476
  type: "button",
1439
1477
  onClick: () => o(c.id),
1440
- "aria-current": i ? "true" : void 0,
1478
+ "aria-current": a ? "true" : void 0,
1441
1479
  underline: "none",
1442
- sx: W,
1480
+ sx: M,
1443
1481
  children: c.title
1444
1482
  }
1445
- ) : c.href ? /* @__PURE__ */ e(
1446
- S,
1483
+ ) : c.href ? /* @__PURE__ */ r(
1484
+ w,
1447
1485
  {
1448
1486
  href: c.href,
1449
- "aria-current": i ? "true" : void 0,
1487
+ "aria-current": a ? "true" : void 0,
1450
1488
  underline: "none",
1451
- sx: W,
1489
+ sx: M,
1452
1490
  children: c.title
1453
1491
  }
1454
1492
  ) : c.title;
1455
1493
  return /* @__PURE__ */ d(
1456
- p,
1494
+ s,
1457
1495
  {
1458
1496
  component: "li",
1459
1497
  sx: (g) => ({
@@ -1464,13 +1502,13 @@ function st({
1464
1502
  borderBottom: 1,
1465
1503
  borderColor: "divider",
1466
1504
  borderLeft: 4,
1467
- borderLeftColor: i ? g.palette.primary.main : "transparent",
1468
- ...s && { "&:hover": { bgcolor: g.palette.action.hover } },
1469
- ...qe(g)
1505
+ borderLeftColor: a ? g.palette.primary.main : "transparent",
1506
+ ...p && { "&:hover": { bgcolor: g.palette.action.hover } },
1507
+ ...Je(g)
1470
1508
  }),
1471
1509
  children: [
1472
- c.imageUrl && /* @__PURE__ */ e(
1473
- p,
1510
+ c.imageUrl && /* @__PURE__ */ r(
1511
+ s,
1474
1512
  {
1475
1513
  component: "img",
1476
1514
  src: c.imageUrl,
@@ -1485,15 +1523,15 @@ function st({
1485
1523
  }
1486
1524
  }
1487
1525
  ),
1488
- /* @__PURE__ */ d(p, { sx: { minWidth: 0 }, children: [
1489
- /* @__PURE__ */ d(h, { component: "p", variant: "overline", color: "text.secondary", children: [
1490
- a(c.number),
1491
- i && ` · ${u}`
1526
+ /* @__PURE__ */ d(s, { sx: { minWidth: 0 }, children: [
1527
+ /* @__PURE__ */ d(m, { component: "p", variant: "overline", color: "text.secondary", children: [
1528
+ l(c.number),
1529
+ a && ` · ${u}`
1492
1530
  ] }),
1493
- /* @__PURE__ */ e(h, { component: f, variant: "h6", children: m }),
1494
- c.meta && /* @__PURE__ */ e(h, { variant: "body2", color: "text.secondary", children: c.meta }),
1495
- c.description && /* @__PURE__ */ e(
1496
- h,
1531
+ /* @__PURE__ */ r(m, { component: h, variant: "h6", children: f }),
1532
+ c.meta && /* @__PURE__ */ r(m, { variant: "body2", color: "text.secondary", children: c.meta }),
1533
+ c.description && /* @__PURE__ */ r(
1534
+ m,
1497
1535
  {
1498
1536
  variant: "body2",
1499
1537
  sx: {
@@ -1515,19 +1553,19 @@ function st({
1515
1553
  }
1516
1554
  );
1517
1555
  }
1518
- function pt({
1519
- title: r,
1556
+ function ut({
1557
+ title: e,
1520
1558
  description: t,
1521
1559
  imageUrl: o,
1522
- platforms: l,
1560
+ platforms: i,
1523
1561
  level: n = 3,
1524
- platformsLabel: a = "Listen on",
1562
+ platformsLabel: l = "Listen on",
1525
1563
  externalLabel: u = "(opens in a new tab)"
1526
1564
  }) {
1527
- const f = `h${n}`;
1565
+ const h = `h${n}`;
1528
1566
  return /* @__PURE__ */ d(A, { sx: { height: "100%" }, children: [
1529
- /* @__PURE__ */ e(
1530
- p,
1567
+ /* @__PURE__ */ r(
1568
+ s,
1531
1569
  {
1532
1570
  sx: (c) => ({
1533
1571
  aspectRatio: "1 / 1",
@@ -1536,8 +1574,8 @@ function pt({
1536
1574
  bgcolor: c.vietri.color.chip,
1537
1575
  color: c.palette.text.secondary
1538
1576
  }),
1539
- children: o ? /* @__PURE__ */ e(
1540
- p,
1577
+ children: o ? /* @__PURE__ */ r(
1578
+ s,
1541
1579
  {
1542
1580
  component: "img",
1543
1581
  src: o,
@@ -1545,38 +1583,38 @@ function pt({
1545
1583
  loading: "lazy",
1546
1584
  sx: { display: "block", width: "100%", height: "100%", objectFit: "cover" }
1547
1585
  }
1548
- ) : /* @__PURE__ */ e(C, { icon: ee, size: 48 })
1586
+ ) : /* @__PURE__ */ r(S, { icon: re, size: 48 })
1549
1587
  }
1550
1588
  ),
1551
- /* @__PURE__ */ d(D, { children: [
1552
- /* @__PURE__ */ e(h, { component: f, variant: "h6", gutterBottom: !0, children: r }),
1553
- t && /* @__PURE__ */ e(h, { variant: "body2", color: "text.secondary", children: t }),
1554
- l.length > 0 && /* @__PURE__ */ e(
1555
- b,
1589
+ /* @__PURE__ */ d(E, { children: [
1590
+ /* @__PURE__ */ r(m, { component: h, variant: "h6", gutterBottom: !0, children: e }),
1591
+ t && /* @__PURE__ */ r(m, { variant: "body2", color: "text.secondary", children: t }),
1592
+ i.length > 0 && /* @__PURE__ */ r(
1593
+ x,
1556
1594
  {
1557
1595
  component: "ul",
1558
1596
  role: "list",
1559
- "aria-label": a,
1597
+ "aria-label": l,
1560
1598
  direction: "row",
1561
1599
  spacing: 1,
1562
1600
  useFlexGap: !0,
1563
1601
  flexWrap: "wrap",
1564
1602
  sx: { listStyle: "none", m: 0, mt: 2, p: 0 },
1565
- children: l.map((c) => /* @__PURE__ */ e("li", { children: /* @__PURE__ */ d(
1566
- z,
1603
+ children: i.map((c) => /* @__PURE__ */ r("li", { children: /* @__PURE__ */ d(
1604
+ O,
1567
1605
  {
1568
1606
  variant: "outlined",
1569
1607
  size: "small",
1570
1608
  href: c.href,
1571
1609
  target: "_blank",
1572
1610
  rel: "noopener noreferrer",
1573
- endIcon: /* @__PURE__ */ e(C, { icon: H, size: 14 }),
1611
+ endIcon: /* @__PURE__ */ r(S, { icon: H, size: 14 }),
1574
1612
  children: [
1575
1613
  c.name,
1576
- /* @__PURE__ */ d(N, { children: [
1614
+ /* @__PURE__ */ d(V, { children: [
1577
1615
  " ",
1578
1616
  "– ",
1579
- r,
1617
+ e,
1580
1618
  " ",
1581
1619
  u
1582
1620
  ] })
@@ -1588,17 +1626,23 @@ function pt({
1588
1626
  ] })
1589
1627
  ] });
1590
1628
  }
1591
- function R(r, t, o = 135) {
1592
- return `linear-gradient(${o}deg, ${r} 0%, ${t} 100%)`;
1629
+ function k(e, t, o = 135, i) {
1630
+ const n = i ? `, ${i} 60%` : "";
1631
+ return `linear-gradient(${o}deg, ${e} 0%${n}, ${t} 100%)`;
1593
1632
  }
1594
- function Je(r) {
1633
+ function Qe(e) {
1595
1634
  return {
1596
- surface: R(...r.surface),
1597
- action: R(...r.action),
1598
- actionHover: R(...r.actionHover)
1635
+ surface: k(
1636
+ e.surface[0],
1637
+ e.surface[1],
1638
+ e.surfaceAngle ?? 135,
1639
+ e.surfaceMid
1640
+ ),
1641
+ action: k(...e.action),
1642
+ actionHover: k(...e.actionHover)
1599
1643
  };
1600
1644
  }
1601
- const y = {
1645
+ const C = {
1602
1646
  spacing: 8,
1603
1647
  radius: {
1604
1648
  sm: 4,
@@ -1625,7 +1669,7 @@ const y = {
1625
1669
  lg: 1200,
1626
1670
  xl: 1536
1627
1671
  }
1628
- }, Qe = {
1672
+ }, Ke = {
1629
1673
  // Respects the system "reduce motion" preference (WCAG 2.3.3).
1630
1674
  MuiCssBaseline: {
1631
1675
  styleOverrides: `
@@ -1642,43 +1686,71 @@ const y = {
1642
1686
  MuiButton: {
1643
1687
  defaultProps: { disableElevation: !0 },
1644
1688
  styleOverrides: {
1645
- root: ({ theme: r }) => ({
1646
- borderRadius: y.radius.md,
1647
- "&:focus-visible": {
1648
- outline: `2px solid ${r.palette.primary.main}`,
1649
- outlineOffset: 2
1650
- }
1651
- }),
1689
+ root: ({ theme: e, ownerState: t }) => {
1690
+ const o = t.variant === "outlined" ? 1 : 0, i = !!e.vietri.color.accentLarge;
1691
+ return {
1692
+ borderRadius: C.radius.md,
1693
+ // A generous "large" button, for the main action of a banner.
1694
+ ...t.size === "large" && {
1695
+ minHeight: 52,
1696
+ padding: `${12 - o}px ${32 - o}px`,
1697
+ fontSize: i ? "1.2rem" : "1rem",
1698
+ ...i && { fontWeight: 700 }
1699
+ },
1700
+ "&:focus-visible": {
1701
+ outline: `2px solid ${e.palette.primary.main}`,
1702
+ outlineOffset: 2
1703
+ }
1704
+ };
1705
+ },
1706
+ // Outlined buttons: a neutral line (lilac in the Streaming theme) with the text color,
1707
+ // so they do not compete with the orange action. Hover and focus bring the primary color.
1708
+ outlinedPrimary: ({ theme: e }) => {
1709
+ const t = e.vietri.color.outline;
1710
+ return t ? {
1711
+ borderColor: t,
1712
+ color: e.palette.text.primary,
1713
+ "&:hover": {
1714
+ borderColor: e.palette.primary.main,
1715
+ backgroundColor: y(e.palette.primary.main, 0.14)
1716
+ }
1717
+ } : {};
1718
+ },
1652
1719
  // Primary action fill. Flat in most themes, a soft gradient in the
1653
1720
  // Observatory. The text color meets AA at both ends of the fill.
1654
- containedPrimary: ({ theme: r }) => ({
1655
- color: r.vietri.color.onAction,
1656
- backgroundImage: r.vietri.gradient.action,
1657
- "&:hover": { backgroundImage: r.vietri.gradient.actionHover },
1658
- "&.Mui-disabled": {
1659
- backgroundImage: "none",
1660
- color: r.palette.action.disabled
1661
- }
1662
- })
1721
+ containedPrimary: ({ theme: e, ownerState: t }) => {
1722
+ const { accentLarge: o, accentLargeHover: i } = e.vietri.color, n = t.size === "large" && o;
1723
+ return {
1724
+ color: e.vietri.color.onAction,
1725
+ backgroundImage: n ? k(o, o) : e.vietri.gradient.action,
1726
+ "&:hover": {
1727
+ backgroundImage: n ? k(i ?? o, i ?? o) : e.vietri.gradient.actionHover
1728
+ },
1729
+ "&.Mui-disabled": {
1730
+ backgroundImage: "none",
1731
+ color: e.palette.action.disabled
1732
+ }
1733
+ };
1734
+ }
1663
1735
  }
1664
1736
  },
1665
1737
  MuiLink: {
1666
1738
  styleOverrides: {
1667
- root: ({ theme: r }) => ({
1739
+ root: ({ theme: e }) => ({
1668
1740
  "&:focus-visible": {
1669
- outline: `2px solid ${r.palette.primary.main}`,
1741
+ outline: `2px solid ${e.palette.primary.main}`,
1670
1742
  outlineOffset: 3,
1671
- borderRadius: y.radius.sm
1743
+ borderRadius: C.radius.sm
1672
1744
  }
1673
1745
  })
1674
1746
  }
1675
1747
  },
1676
1748
  MuiChip: {
1677
1749
  styleOverrides: {
1678
- root: ({ ownerState: r, theme: t }) => {
1679
- const o = r.variant === "filled" && r.color === "default";
1750
+ root: ({ ownerState: e, theme: t }) => {
1751
+ const o = e.variant === "filled" && e.color === "default";
1680
1752
  return {
1681
- fontWeight: y.typography.fontWeight.semibold,
1753
+ fontWeight: C.typography.fontWeight.semibold,
1682
1754
  fontSize: "0.75rem",
1683
1755
  // MUI's default chip is translucent, so its text is only readable on
1684
1756
  // the surface it was designed for. Opaque colors keep it legible on
@@ -1698,16 +1770,16 @@ const y = {
1698
1770
  defaultProps: { variant: "outlined" },
1699
1771
  styleOverrides: {
1700
1772
  root: {
1701
- borderRadius: y.radius.lg,
1773
+ borderRadius: C.radius.lg,
1702
1774
  backgroundImage: "none"
1703
1775
  }
1704
1776
  }
1705
1777
  },
1706
1778
  MuiCardActionArea: {
1707
1779
  styleOverrides: {
1708
- root: ({ theme: r }) => ({
1780
+ root: ({ theme: e }) => ({
1709
1781
  "&:focus-visible": {
1710
- outline: `2px solid ${r.palette.primary.main}`,
1782
+ outline: `2px solid ${e.palette.primary.main}`,
1711
1783
  outlineOffset: -2
1712
1784
  }
1713
1785
  })
@@ -1715,7 +1787,7 @@ const y = {
1715
1787
  },
1716
1788
  MuiDialog: {
1717
1789
  styleOverrides: {
1718
- paper: { borderRadius: y.radius.lg, backgroundImage: "none" }
1790
+ paper: { borderRadius: C.radius.lg, backgroundImage: "none" }
1719
1791
  }
1720
1792
  },
1721
1793
  MuiDrawer: {
@@ -1727,50 +1799,50 @@ const y = {
1727
1799
  // contrast for interface components (WCAG 1.4.11).
1728
1800
  MuiOutlinedInput: {
1729
1801
  styleOverrides: {
1730
- root: ({ theme: r }) => ({
1731
- borderRadius: y.radius.md,
1802
+ root: ({ theme: e }) => ({
1803
+ borderRadius: C.radius.md,
1732
1804
  "& .MuiOutlinedInput-notchedOutline": {
1733
- borderColor: r.palette.text.secondary
1805
+ borderColor: e.palette.text.secondary
1734
1806
  },
1735
1807
  "&:hover .MuiOutlinedInput-notchedOutline": {
1736
- borderColor: r.palette.text.primary
1808
+ borderColor: e.palette.text.primary
1737
1809
  },
1738
1810
  "&.Mui-focused .MuiOutlinedInput-notchedOutline": {
1739
- borderColor: r.palette.primary.main
1811
+ borderColor: e.palette.primary.main
1740
1812
  },
1741
1813
  "&.Mui-error .MuiOutlinedInput-notchedOutline": {
1742
- borderColor: r.palette.error.main
1814
+ borderColor: e.palette.error.main
1743
1815
  },
1744
1816
  "&.Mui-disabled .MuiOutlinedInput-notchedOutline": {
1745
- borderColor: r.palette.divider
1817
+ borderColor: e.palette.divider
1746
1818
  }
1747
1819
  })
1748
1820
  }
1749
1821
  },
1750
1822
  MuiTableCell: {
1751
1823
  styleOverrides: {
1752
- root: ({ theme: r }) => ({
1753
- borderBottomColor: r.palette.divider
1824
+ root: ({ theme: e }) => ({
1825
+ borderBottomColor: e.palette.divider
1754
1826
  }),
1755
- head: ({ theme: r }) => ({
1756
- fontWeight: y.typography.fontWeight.semibold,
1757
- color: r.palette.text.primary,
1758
- borderBottom: `2px solid ${r.palette.text.primary}`
1827
+ head: ({ theme: e }) => ({
1828
+ fontWeight: C.typography.fontWeight.semibold,
1829
+ color: e.palette.text.primary,
1830
+ borderBottom: `2px solid ${e.palette.text.primary}`
1759
1831
  })
1760
1832
  }
1761
1833
  }
1762
- }, { typography: F, breakpoints: Ke } = y;
1763
- function Ze(r) {
1834
+ }, { typography: F, breakpoints: Ze } = C;
1835
+ function er(e) {
1764
1836
  return {
1765
- color: r,
1766
- shadow: y.shadow,
1767
- gradient: Je(r)
1837
+ color: e,
1838
+ shadow: C.shadow,
1839
+ gradient: Qe(e)
1768
1840
  };
1769
1841
  }
1770
- const er = {
1771
- spacing: y.spacing,
1772
- shape: { borderRadius: y.radius.md },
1773
- breakpoints: { values: { ...Ke } },
1842
+ const rr = {
1843
+ spacing: C.spacing,
1844
+ shape: { borderRadius: C.radius.md },
1845
+ breakpoints: { values: { ...Ze } },
1774
1846
  typography: {
1775
1847
  fontFamily: F.fontFamily,
1776
1848
  fontWeightRegular: F.fontWeight.regular,
@@ -1814,32 +1886,32 @@ const er = {
1814
1886
  letterSpacing: "0.12em"
1815
1887
  }
1816
1888
  },
1817
- components: Qe
1889
+ components: Ke
1818
1890
  };
1819
- function G(r) {
1820
- return $e({
1821
- ...er,
1822
- vietri: Ze(r),
1891
+ function N(e) {
1892
+ return Te({
1893
+ ...rr,
1894
+ vietri: er(e),
1823
1895
  palette: {
1824
- mode: r.mode,
1825
- primary: { main: r.primary, contrastText: r.onPrimary },
1826
- secondary: { main: r.secondary, contrastText: r.onSecondary },
1827
- error: { main: r.status.error, contrastText: r.onStatus },
1828
- warning: { main: r.status.warning, contrastText: r.onStatus },
1829
- info: { main: r.status.info, contrastText: r.onStatus },
1830
- success: { main: r.status.success, contrastText: r.onStatus },
1831
- background: { default: r.bg, paper: r.paper },
1832
- text: { primary: r.ink, secondary: r.inkSoft },
1833
- divider: r.line
1896
+ mode: e.mode,
1897
+ primary: { main: e.primary, contrastText: e.onPrimary },
1898
+ secondary: { main: e.secondary, contrastText: e.onSecondary },
1899
+ error: { main: e.status.error, contrastText: e.onStatus },
1900
+ warning: { main: e.status.warning, contrastText: e.onStatus },
1901
+ info: { main: e.status.info, contrastText: e.onStatus },
1902
+ success: { main: e.status.success, contrastText: e.onStatus },
1903
+ background: { default: e.bg, paper: e.paper },
1904
+ text: { primary: e.ink, secondary: e.inkSoft },
1905
+ divider: e.line
1834
1906
  }
1835
1907
  });
1836
1908
  }
1837
- const k = (r) => [r, r], rr = {
1909
+ const B = (e) => [e, e], tr = {
1838
1910
  error: "#B91C1C",
1839
1911
  warning: "#92400E",
1840
1912
  info: "#0369A1",
1841
1913
  success: "#166534"
1842
- }, tr = {
1914
+ }, or = {
1843
1915
  mode: "light",
1844
1916
  bg: "#FFFFFF",
1845
1917
  paper: "#FFFFFF",
@@ -1850,10 +1922,10 @@ const k = (r) => [r, r], rr = {
1850
1922
  onPrimary: "#FFFFFF",
1851
1923
  secondary: "#7A5718",
1852
1924
  onSecondary: "#FFFFFF",
1853
- action: k("#DBAC5B"),
1854
- actionHover: k("#FDD07A"),
1925
+ action: B("#DBAC5B"),
1926
+ actionHover: B("#FDD07A"),
1855
1927
  onAction: "#000000",
1856
- surface: k("#000000"),
1928
+ surface: B("#000000"),
1857
1929
  scrim: "#000000",
1858
1930
  onSurface: "#FFFFFF",
1859
1931
  onSurfaceSoft: "#D4D4D4",
@@ -1861,7 +1933,7 @@ const k = (r) => [r, r], rr = {
1861
1933
  chipHover: "#E8DDC4",
1862
1934
  onChip: "#111111",
1863
1935
  glow: null,
1864
- status: rr,
1936
+ status: tr,
1865
1937
  onStatus: "#FFFFFF",
1866
1938
  brand: {
1867
1939
  black: "#000000",
@@ -1875,24 +1947,34 @@ const k = (r) => [r, r], rr = {
1875
1947
  ink: "#111111",
1876
1948
  inkSoft: "#555555"
1877
1949
  }
1878
- }, or = {
1950
+ }, ir = {
1879
1951
  mode: "dark",
1880
1952
  bg: "#20123A",
1881
1953
  paper: "#2D1B50",
1882
1954
  ink: "#FFFFFF",
1883
1955
  inkSoft: "#D5CAEB",
1884
1956
  line: "rgba(255, 255, 255, 0.14)",
1885
- primary: "#1CDAF3",
1957
+ // Orange as text, outline and focus ring on dark backgrounds (6.3:1 on night, 5.5:1 on cards).
1958
+ primary: "#F4793F",
1886
1959
  onPrimary: "#20123A",
1887
1960
  secondary: "#B99BFF",
1888
1961
  onSecondary: "#20123A",
1889
- action: k("#1CDAF3"),
1890
- actionHover: k("#6AE9FA"),
1891
- onAction: "#20123A",
1892
- // Violet to lavender. The lavender end is #816CB2 darkened a hair (#7A64AE):
1893
- // the exact #816CB2 gives white text 4.45:1, just under the 4.5:1 minimum.
1894
- surface: ["#693BCC", "#7A64AE"],
1895
- scrim: "#20123A",
1962
+ // Button fill: a burnt orange that holds white text at 4.8:1 (the brand orange gives 3.2:1).
1963
+ action: B("#C8460B"),
1964
+ actionHover: B("#B63F0A"),
1965
+ onAction: "#FFFFFF",
1966
+ // The line of outlined buttons: lilac (7.6:1 on the page, 6.6:1 on the cards).
1967
+ outline: "#B99BFF",
1968
+ // The brand orange, for large buttons (their bold label is large text) and for the
1969
+ // short rule under a hero title.
1970
+ accentLarge: "#F35F1C",
1971
+ accentLargeHover: "#DE520F",
1972
+ // A flat violet: white text at 12.9:1. A thin orange rule marks the top of the footer.
1973
+ surface: ["#3B2562", "#3B2562"],
1974
+ surfaceRule: "#F35F1C",
1975
+ // The layer over a hero photo: the brightest violet that keeps white text at 4.5:1
1976
+ // over a pure white photo with the layer at 74%.
1977
+ scrim: "#4E2B8B",
1896
1978
  onSurface: "#FFFFFF",
1897
1979
  onSurfaceSoft: "#F7F3FF",
1898
1980
  chip: "#3C2866",
@@ -1911,19 +1993,26 @@ const k = (r) => [r, r], rr = {
1911
1993
  violet: "#693BCC",
1912
1994
  lavender: "#816CB2",
1913
1995
  magenta: "#CB1F9C",
1914
- cyan: "#1CDAF3"
1996
+ /** The brand orange. */
1997
+ orange: "#F35F1C"
1915
1998
  },
1916
1999
  derived: {
1917
- /** Lavender darkened to carry white text at 4.5:1 (the end of the surface gradient). */
1918
- lavenderDeep: "#7A64AE",
1919
2000
  /** Violet that reads as text on the night background (7.6:1). */
1920
2001
  lilac: "#B99BFF",
1921
2002
  /** Raised surface over night. */
1922
2003
  nightRaised: "#2D1B50",
1923
- /** Hovered primary action (12:1 with the dark text). */
1924
- cyanHover: "#6AE9FA"
2004
+ /** Orange for text and outlines on dark backgrounds. */
2005
+ orangeText: "#F4793F",
2006
+ /** Burnt orange of the button fill (white text at 4.8:1). */
2007
+ orangeDeep: "#C8460B",
2008
+ /** Hovered button fill, darker (white text at 5.7:1). */
2009
+ orangeHover: "#B63F0A",
2010
+ /** Violet of the hero layer. */
2011
+ layerViolet: "#4E2B8B",
2012
+ /** The flat violet of the footer. */
2013
+ footerViolet: "#3B2562"
1925
2014
  }
1926
- }, ir = {
2015
+ }, nr = {
1927
2016
  mode: "light",
1928
2017
  bg: "#F7F4FA",
1929
2018
  paper: "#FFFFFF",
@@ -1936,10 +2025,10 @@ const k = (r) => [r, r], rr = {
1936
2025
  onPrimary: "#FFFFFF",
1937
2026
  secondary: "#4A0875",
1938
2027
  onSecondary: "#FFFFFF",
1939
- action: k("#027381"),
1940
- actionHover: k("#015C68"),
2028
+ action: B("#027381"),
2029
+ actionHover: B("#015C68"),
1941
2030
  onAction: "#FFFFFF",
1942
- surface: k("#4A0875"),
2031
+ surface: B("#4A0875"),
1943
2032
  scrim: "#2B1B3D",
1944
2033
  onSurface: "#FFFFFF",
1945
2034
  onSurfaceSoft: "#E8DCF4",
@@ -1974,7 +2063,7 @@ const k = (r) => [r, r], rr = {
1974
2063
  /** Teal for the hovered primary action (7.7:1 with white). */
1975
2064
  tealDark: "#015C68"
1976
2065
  }
1977
- }, ut = G(tr), ht = G(or), mt = G(ir), nr = [
2066
+ }, mt = N(or), ht = N(ir), ft = N(nr), ar = [
1978
2067
  { bg: "#E0F2FE", fg: "#0C4A6E", dot: "#0284C7" },
1979
2068
  // sky
1980
2069
  { bg: "#EDE9FE", fg: "#4C1D95", dot: "#7C3AED" },
@@ -1996,13 +2085,13 @@ const k = (r) => [r, r], rr = {
1996
2085
  { bg: "#ECFCCB", fg: "#365314", dot: "#65A30D" }
1997
2086
  // lime
1998
2087
  ];
1999
- function ft(r, t = nr) {
2000
- const o = Array.from(new Set(r));
2088
+ function gt(e, t = ar) {
2089
+ const o = Array.from(new Set(e));
2001
2090
  return Object.fromEntries(
2002
- o.map((l, n) => [l, t[n % t.length]])
2091
+ o.map((i, n) => [i, t[n % t.length]])
2003
2092
  );
2004
2093
  }
2005
- const gt = [
2094
+ const bt = [
2006
2095
  { bg: "#027381", fg: "#FFFFFF", dot: "#027381" },
2007
2096
  // teal
2008
2097
  { bg: "#FF7751", fg: "#2B1B3D", dot: "#C2410C" },
@@ -2019,55 +2108,55 @@ const gt = [
2019
2108
  // vermilion
2020
2109
  ];
2021
2110
  export {
2022
- Xr as BarChart,
2023
- yt as Button,
2024
- St as Card,
2111
+ Yr as BarChart,
2112
+ Ct as Button,
2113
+ wt as Card,
2025
2114
  kt as CardActionArea,
2026
2115
  At as CardActions,
2027
- Et as CardContent,
2028
- Wt as CardMedia,
2029
- Ue as CategoryChip,
2030
- $t as Chip,
2031
- ct as ContentRail,
2032
- et as CopyField,
2033
- Ur as DataTable,
2034
- Kr as Dialog,
2035
- Zr as Drawer,
2036
- st as EpisodeList,
2037
- ot as FeatureCard,
2038
- qr as Footer,
2039
- tt as Hero,
2040
- C as Icon,
2041
- Ot as Input,
2042
- Vr as LanguageSwitch,
2043
- lt as MediaCard,
2116
+ It as CardContent,
2117
+ Mt as CardMedia,
2118
+ Xe as CategoryChip,
2119
+ Tt as Chip,
2120
+ dt as ContentRail,
2121
+ rt as CopyField,
2122
+ Xr as DataTable,
2123
+ Zr as Dialog,
2124
+ et as Drawer,
2125
+ pt as EpisodeList,
2126
+ it as FeatureCard,
2127
+ Jr as Footer,
2128
+ ot as Hero,
2129
+ S as Icon,
2130
+ zt as Input,
2131
+ Ur as LanguageSwitch,
2132
+ ct as MediaCard,
2044
2133
  Gr as NavBar,
2045
- pt as PlaylistCard,
2046
- at as ProfileCard,
2047
- Jr as SectionHeader,
2048
- Qr as Select,
2049
- rt as SkipLink,
2134
+ ut as PlaylistCard,
2135
+ lt as ProfileCard,
2136
+ Qr as SectionHeader,
2137
+ Kr as Select,
2138
+ tt as SkipLink,
2050
2139
  _r as StatCard,
2051
- it as Steps,
2052
- zt as Tab,
2140
+ nt as Steps,
2141
+ Ht as Tab,
2053
2142
  Pt as Tabs,
2054
- nt as Timeline,
2055
- vt as Typography,
2056
- dt as VideoEmbed,
2057
- N as VisuallyHidden,
2058
- nr as categoryPalette,
2059
- ft as createCategoryColors,
2060
- Je as createGradients,
2061
- G as createVietriTheme,
2062
- tr as editorialColors,
2063
- ut as editorialTheme,
2064
- Yr as icons,
2065
- R as linearGradient,
2066
- gt as observatoryCategoryPalette,
2067
- ir as observatoryColors,
2068
- mt as observatoryTheme,
2069
- or as streamingColors,
2143
+ at as Timeline,
2144
+ Ft as Typography,
2145
+ st as VideoEmbed,
2146
+ V as VisuallyHidden,
2147
+ ar as categoryPalette,
2148
+ gt as createCategoryColors,
2149
+ Qe as createGradients,
2150
+ N as createVietriTheme,
2151
+ or as editorialColors,
2152
+ mt as editorialTheme,
2153
+ qr as icons,
2154
+ k as linearGradient,
2155
+ bt as observatoryCategoryPalette,
2156
+ nr as observatoryColors,
2157
+ ft as observatoryTheme,
2158
+ ir as streamingColors,
2070
2159
  ht as streamingTheme,
2071
- y as tokens
2160
+ C as tokens
2072
2161
  };
2073
2162
  //# sourceMappingURL=index.js.map