timvir 0.2.17 → 0.2.19

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.
@@ -158,6 +158,13 @@ function Arbitrary(props, ref) {
158
158
  });
159
159
  }
160
160
  }, "Refresh")), /*#__PURE__*/React.createElement(Exhibit, {
161
+ bleed: 0,
162
+ BackdropProps: {
163
+ style: {
164
+ borderRadius: 2,
165
+ border: "1px solid var(--timvir-border-color)"
166
+ }
167
+ },
161
168
  ...ExhibitProps
162
169
  }, children)));
163
170
  }
@@ -1,7 +1,7 @@
1
1
  .r1ev38xg{margin:1em 0;}
2
2
  .c8hz158{display:grid;grid-gap:8px;grid-template-columns:1fr 100px;margin-bottom:8px;}
3
- .t1663phv{display:flex;align-items:center;padding:0 0 0 10px;height:36px;position:relative;background:var(--timvir-secondary-background-color);}.t1663phv::after{display:block;position:absolute;content:"";inset:0;pointer-events:none;border:1px solid var(--timvir-border-color);border-radius:2px;}.t1663phv:hover::after{border-color:var(--timvir-text-color);}.t1663phv:focus-within::after{border-color:var(--timvir-text-color);}
3
+ .t1663phv{display:flex;align-items:center;padding:0 0 0 10px;min-height:36px;position:relative;background:var(--timvir-secondary-background-color);}.t1663phv::after{display:block;position:absolute;content:"";inset:0;pointer-events:none;border:1px solid var(--timvir-border-color);border-radius:2px;}.t1663phv:hover::after{border-color:var(--timvir-text-color);}.t1663phv:focus-within::after{border-color:var(--timvir-text-color);}
4
4
  .s1k50njo{display:inline-block;color:var(--timvir-secondary-text-color);margin-right:6px;}
5
5
  .i1dajnne{border:none;outline:none;font:inherit;background:transparent;align-self:stretch;padding:0;width:100%;color:inherit;}
6
- .b128wsn{border:none;outline:none;height:36px;border:1px solid var(--timvir-border-color);border-radius:2px;background:var(--timvir-secondary-background-color);color:var(--timvir-text-color);font:inherit;}.b128wsn:hover{border-color:var(--timvir-text-color);background:var(--timvir-sidebar-highlight-color);}.b128wsn:active{border-color:var(--timvir-text-color);background:var(--timvir-sidebar-highlight-color);}
6
+ .b128wsn{border:none;outline:none;min-height:36px;border:1px solid var(--timvir-border-color);border-radius:2px;background:var(--timvir-secondary-background-color);color:var(--timvir-text-color);font:inherit;}.b128wsn:hover{border-color:var(--timvir-text-color);background:var(--timvir-sidebar-highlight-color);}.b128wsn:active{border-color:var(--timvir-text-color);background:var(--timvir-sidebar-highlight-color);}
7
7
 
@@ -6,11 +6,11 @@
6
6
  .s1hdfi6o{position:absolute;z-index:-1;top:0;right:0;transition:all 0.2s;transform:translate(48px,-48px);}.s1hdfi6o path{fill:var(--c-p-4);}
7
7
  .d17pltln{padding:16px 24px 16px 0;}
8
8
 
9
- .r9v2r0l{margin:1.5rem 0 3rem;}:root[data-timvir-theme="dark"] .r9v2r0l .shiki,:root[data-timvir-theme="dark"] .r9v2r0l .shiki span{color:var(--shiki-dark) !important;font-style:var(--shiki-dark-font-style) !important;font-weight:var(--shiki-dark-font-weight) !important;text-decoration:var(--shiki-dark-text-decoration) !important;}
10
- .cs7tint{overflow-x:auto;contain:content;font-size:0.8em;border-radius:5px;--timvir-b-Code-bleed:calc(var(--timvir-page-margin,24px) * 0.6666);--timvir-b-Code-inlinePadding:max(var(--timvir-b-Code-bleed),8px);padding:0;margin:0 calc(-1 * var(--timvir-b-Code-bleed));border:1px solid var(--timvir-border-color);}.cs7tint pre{margin:0;padding:16px 0;background-color:var(--timvir-secondary-background-color) !important;}.cs7tint pre code{display:block;}.cs7tint pre code .line{display:inline-block;position:relative;width:100%;}.cs7tint pre .line{padding-inline:var(--timvir-b-Code-inlinePadding);}
9
+ :root[data-timvir-theme="dark"] .r9v2r0l .shiki,:root[data-timvir-theme="dark"] .r9v2r0l .shiki span{color:var(--shiki-dark) !important;font-style:var(--shiki-dark-font-style) !important;font-weight:var(--shiki-dark-font-weight) !important;text-decoration:var(--shiki-dark-text-decoration) !important;}
10
+ .cs7tint{overflow-x:auto;contain:content;font-size:0.8em;border-radius:5px;--timvir-b-Code-bleed:calc(var(--timvir-margin,0px) * 0.6666);--timvir-b-Code-inlinePadding:max(var(--timvir-b-Code-bleed),8px);padding:0;margin:0 calc(-1 * var(--timvir-b-Code-bleed));border:1px solid var(--timvir-border-color);}.cs7tint pre{margin:0;padding:16px 0;background-color:var(--timvir-secondary-background-color) !important;}.cs7tint pre code{display:block;}.cs7tint pre code .line{display:inline-block;position:relative;width:100%;}.cs7tint pre .line{padding-inline:var(--timvir-b-Code-inlinePadding);}
11
11
  .fjvaz2s{display:grid;border-radius:0;box-shadow:none;margin-inline:0;grid-auto-rows:min-content;grid-template-columns:[le] 0 [lc] 1fr [rc] 0 [re];grid-column-gap:16px;}.fjvaz2s:hover{box-shadow:none;}@media (min-width:60rem){.fjvaz2s{grid-template-columns:[le] 1fr [lc] minmax(0,48rem) [rc] 1fr [re];grid-column-gap:24px;}}.fjvaz2s > *{grid-column:lc / re;}
12
12
  .lchll0h{padding-inline:var(--timvir-b-Code-inlinePadding);}
13
13
  .h1xcko1i{background-color:#ffe10044;}:root[data-timvir-theme="dark"] .h1xcko1i{background-color:rgba(174,124,20,0.15);}
14
14
  .ll2b9hx{display:inline-block;width:var(--timvir-b-Code-bleed);color:var(--timvir-secondary-text-color);text-align:right;padding-inline:4px;}
15
- .c5vr6r2{font-size:0.8125rem;line-height:1.1875;color:var(--timvir-secondary-text-color);margin-top:2px;}
15
+ .c5vr6r2{font-size:0.8125rem;line-height:1.1875;color:var(--timvir-secondary-text-color);margin-top:0.3em;}
16
16
 
@@ -2,18 +2,16 @@ import * as React from "react";
2
2
  /**
3
3
  * The underlying DOM element which is rendered by this component.
4
4
  */
5
- declare const Root = "figure";
5
+ declare const Root = "div";
6
6
  interface Props extends React.ComponentProps<typeof Root> {
7
7
  caption?: React.ReactNode;
8
8
  /**
9
9
  * How much the component should extend out of its original box. When number,
10
10
  * it's the number of pixels. When a string, must evaluate to a CSS <length>
11
11
  * (can be inline or reference to a CSS variable).
12
- *
13
- * @default 0
14
12
  */
15
13
  bleed?: string | number;
16
14
  BackdropProps?: React.ComponentPropsWithoutRef<"div">;
17
15
  }
18
- declare const _default: React.ForwardRefExoticComponent<Omit<Props, "ref"> & React.RefAttributes<HTMLElement>>;
16
+ declare const _default: React.ForwardRefExoticComponent<Omit<Props, "ref"> & React.RefAttributes<HTMLDivElement>>;
19
17
  export default _default;
@@ -15,7 +15,7 @@ Think of it as a `<figure>` + `<figcaption>` for React components.
15
15
 
16
16
  Add a title to the exhibit if it helps the reader to understand the exhibit better. The title is placed snuggly to the exhibit.
17
17
 
18
- <Exhibit bleed={8} title="This Is Not A Button" caption="It's an input element, of type text">
18
+ <Exhibit title="This Is Not A Button" caption="It's an input element, of type text">
19
19
  <input type="text" placeholder="Type something…" style={{ boxSizing: "border-box", width: "100%", padding: 8 }} />
20
20
  </Exhibit>
21
21
 
@@ -23,33 +23,19 @@ Add a title to the exhibit if it helps the reader to understand the exhibit bett
23
23
 
24
24
  Use the `bleed` prop to control how much the checkered background extends beyond the box of the element itself.
25
25
 
26
- #### bleed 0
27
-
28
- <Exhibit bleed={0}>
26
+ <Exhibit bleed={0} caption="Bleed 0">
29
27
  <div
30
28
  style={{ height: 40, padding: "0 16px", background: "teal", color: "white", display: "flex", alignItems: "center" }}
31
29
  />
32
30
  </Exhibit>
33
31
 
34
- #### bleed 4
35
-
36
- <Exhibit bleed={4}>
32
+ <Exhibit bleed={4} caption="Bleed 4">
37
33
  <div
38
34
  style={{ height: 40, padding: "0 16px", background: "teal", color: "white", display: "flex", alignItems: "center" }}
39
35
  />
40
36
  </Exhibit>
41
37
 
42
- #### bleed 12
43
-
44
- <Exhibit bleed={12}>
45
- <div
46
- style={{ height: 40, padding: "0 16px", background: "teal", color: "white", display: "flex", alignItems: "center" }}
47
- />
48
- </Exhibit>
49
-
50
- #### bleed 24
51
-
52
- <Exhibit bleed={24}>
38
+ <Exhibit bleed={12} caption="Bleed 12">
53
39
  <div
54
40
  style={{ height: 40, padding: "0 16px", background: "teal", color: "white", display: "flex", alignItems: "center" }}
55
41
  />
@@ -34,7 +34,7 @@ var cx_default = cx;
34
34
  /**
35
35
  * The underlying DOM element which is rendered by this component.
36
36
  */
37
- const Root = "figure";
37
+ const Root = "div";
38
38
  function Exhibit(props, ref) {
39
39
  const block = useBlock(props);
40
40
  const components = {
@@ -44,7 +44,7 @@ function Exhibit(props, ref) {
44
44
  const {
45
45
  title,
46
46
  caption,
47
- bleed = 0,
47
+ bleed,
48
48
  BackdropProps,
49
49
  children,
50
50
  className,
@@ -56,16 +56,17 @@ function Exhibit(props, ref) {
56
56
  className: cx_default(className, classes.root),
57
57
  style: {
58
58
  ...style,
59
- [cssVariables.bleed]: typeof bleed === "number" ? `${bleed}px` : bleed
59
+ [cssVariables.bleed]: typeof bleed === "number" ? `${bleed}px` : undefined
60
60
  },
61
61
  ...rest
62
62
  }, /*#__PURE__*/React.createElement("div", {
63
63
  className: classes.container,
64
+ ...BackdropProps,
64
65
  style: {
65
- border: bleed !== 0 ? `1px solid var(${cssVariables.borderColor})` : "none"
66
- },
67
- ...BackdropProps
68
- }, children), caption && /*#__PURE__*/React.createElement("figcaption", {
66
+ border: bleed === 0 ? "none" : `1px solid var(${cssVariables.borderColor})`,
67
+ ...BackdropProps?.style
68
+ }
69
+ }, children), caption && /*#__PURE__*/React.createElement("div", {
69
70
  className: classes.caption
70
71
  }, caption)));
71
72
  }
@@ -1,4 +1,4 @@
1
- .r1nql2f9{margin:0 0 1.5rem;--timvir-b-Exhibit-bleed:0px;--timvir-b-Exhibit-borderColor:var(--timvir-border-color);--timvir-b-Exhibit-background:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAoAAAAKCAAAAACoWZBhAAAAF0lEQVQI12P4BAI/QICBFCaYBPNJYQIAkUZftTbC4sIAAAAASUVORK5CYII=);}:root[data-timvir-theme="dark"] .r1nql2f9{--timvir-b-Exhibit-background:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAoAAAAKCAAAAACoWZBhAAAAFklEQVQI12NQBQF2EGAghQkmwXxSmADZJQiZ2ZZ46gAAAABJRU5ErkJggg==);}
2
- .c4ji594{display:flow-root;background:var(--timvir-b-Exhibit-background);margin:0 calc(-1 * var(--timvir-b-Exhibit-bleed));padding:var(--timvir-b-Exhibit-bleed);}
3
- .cf43jjx{font-size:0.8125rem;line-height:1.1875;color:var(--timvir-secondary-text-color);margin-top:2px;}
1
+ .r1nql2f9{--timvir-b-Exhibit-bleed:calc(var(--timvir-margin,0px) * 0.6666);--timvir-b-Exhibit-borderColor:var(--timvir-border-color);--timvir-b-Exhibit-background:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAoAAAAKCAIAAAACUFjqAAAAHElEQVR4AWP4/u07Mvr75y8yGlBpND6a6oGUBgAxMSSkDKa/pQAAAABJRU5ErkJggg==);}:root[data-timvir-theme="dark"] .r1nql2f9{--timvir-b-Exhibit-background:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAoAAAAKCAAAAACoWZBhAAAAFklEQVQI12NQBQF2EGAghQkmwXxSmADZJQiZ2ZZ46gAAAABJRU5ErkJggg==);}
2
+ .c4ji594{display:flow-root;background:var(--timvir-b-Exhibit-background);margin:0 calc(-1 * var(--timvir-b-Exhibit-bleed));padding:var(--timvir-b-Exhibit-bleed);border-radius:5px;}
3
+ .cf43jjx{font-size:0.8125rem;line-height:1.1875;color:var(--timvir-secondary-text-color);margin-top:0.3em;}
4
4
 
@@ -67,16 +67,16 @@ Combine `<Grid>` with the `<Image>` component.
67
67
  Combine `<Grid>` with the `<Exhibit>` component.
68
68
 
69
69
  <Grid>
70
- <Exhibit bleed={8}>
70
+ <Exhibit>
71
71
  <div style={{ height: 100, background: "rgba(0,0,0,.2)", display: "flex", alignItems: "center", justifyContent: "center" }}>ITEM</div>
72
72
  </Exhibit>
73
- <Exhibit bleed={8}>
73
+ <Exhibit>
74
74
  <div style={{ height: 100, background: "rgba(0,0,0,.2)", display: "flex", alignItems: "center", justifyContent: "center" }}>ITEM</div>
75
75
  </Exhibit>
76
- <Exhibit bleed={8}>
76
+ <Exhibit>
77
77
  <div style={{ height: 100, background: "rgba(0,0,0,.2)", display: "flex", alignItems: "center", justifyContent: "center" }}>ITEM</div>
78
78
  </Exhibit>
79
- <Exhibit bleed={8}>
79
+ <Exhibit>
80
80
  <div style={{ height: 100, background: "rgba(0,0,0,.2)", display: "flex", alignItems: "center", justifyContent: "center" }}>ITEM</div>
81
81
  </Exhibit>
82
82
  </Grid>
@@ -1,2 +1,2 @@
1
- .r1c1ozpm{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:24px;}
1
+ .r1c1ozpm{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:var(--timvir-page-margin,24px);--timvir-margin:calc(var(--timvir-page-margin,24px) * 0.5);}
2
2
 
@@ -5,7 +5,7 @@ import { Code } from "../../Code";
5
5
 
6
6
  # Message
7
7
 
8
- <Exhibit bleed="var(--timvir-page-margin)">
8
+ <Exhibit>
9
9
  <Sample variant="basic" />
10
10
  </Exhibit>
11
11
 
@@ -16,13 +16,13 @@ import { Code } from "../../Code";
16
16
  ## Variants
17
17
 
18
18
  <Grid>
19
- <Exhibit bleed={8} caption="info">
19
+ <Exhibit caption="info">
20
20
  <Sample variant="basic" props={{ variant: "info" }} />
21
21
  </Exhibit>
22
- <Exhibit bleed={8} caption="warning">
22
+ <Exhibit caption="warning">
23
23
  <Sample variant="basic" props={{ variant: "warning" }} />
24
24
  </Exhibit>
25
- <Exhibit bleed={8} caption="alert">
25
+ <Exhibit caption="alert">
26
26
  <Sample variant="basic" props={{ variant: "alert" }} />
27
27
  </Exhibit>
28
28
  </Grid>
@@ -32,7 +32,7 @@ import { Code } from "../../Code";
32
32
  Make the title bold and place it before the message, or use a level 3 heading. You can use arbitrary markdown inside the message.
33
33
 
34
34
  <Grid>
35
- <Exhibit bleed={8} caption="Inline title">
35
+ <Exhibit caption="Inline title">
36
36
  <Sample variant="basic">
37
37
 
38
38
 
@@ -42,7 +42,7 @@ Make the title bold and place it before the message, or use a level 3 heading. Y
42
42
  </Exhibit>
43
43
 
44
44
 
45
- <Exhibit bleed={8} caption="Title as a separate block elment">
45
+ <Exhibit caption="Title as a separate block elment">
46
46
  <Sample variant="basic">
47
47
 
48
48
 
@@ -1,4 +1,4 @@
1
- .fgdj0yb{font-size:0.75rem;color:var(--timvir-secondary-text-color);white-space:nowrap;display:flex;justify-content:space-between;align-items:center;}
1
+ .fgdj0yb{font-size:0.8125rem;line-height:1.1875;color:var(--timvir-secondary-text-color);white-space:nowrap;display:flex;justify-content:space-between;align-items:center;}
2
2
  .d1rc4zjh{cursor:pointer;}.d1rc4zjh:hover{color:var(--c-p-4);opacity:1;}.d1rc4zjh > svg{display:block;}
3
3
  .d1enfo6{overflow:hidden;transition:height 0.2s,opacity 0.2s 0.1s;}
4
4
  .d1watfn6{margin-top:12px;}
@@ -7,7 +7,7 @@
7
7
 
8
8
  .ssl4j8q{width:100%;display:block;height:16px;margin:8px 0;}
9
9
 
10
- .r1ouu0bc{contain:layout;}
10
+ .r1ouu0bc{contain:layout;margin-bottom:0;}
11
11
  .d1uj09ka{position:relative;}
12
12
  .d2uawyc{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);font-variant-numeric:tabular-nums;}
13
13
  .d8ms9m9{display:flex;align-items:stretch;justify-content:center;}
package/blocks/styles.css CHANGED
@@ -1,9 +1,9 @@
1
1
  .r1ev38xg{margin:1em 0;}
2
2
  .c8hz158{display:grid;grid-gap:8px;grid-template-columns:1fr 100px;margin-bottom:8px;}
3
- .t1663phv{display:flex;align-items:center;padding:0 0 0 10px;height:36px;position:relative;background:var(--timvir-secondary-background-color);}.t1663phv::after{display:block;position:absolute;content:"";inset:0;pointer-events:none;border:1px solid var(--timvir-border-color);border-radius:2px;}.t1663phv:hover::after{border-color:var(--timvir-text-color);}.t1663phv:focus-within::after{border-color:var(--timvir-text-color);}
3
+ .t1663phv{display:flex;align-items:center;padding:0 0 0 10px;min-height:36px;position:relative;background:var(--timvir-secondary-background-color);}.t1663phv::after{display:block;position:absolute;content:"";inset:0;pointer-events:none;border:1px solid var(--timvir-border-color);border-radius:2px;}.t1663phv:hover::after{border-color:var(--timvir-text-color);}.t1663phv:focus-within::after{border-color:var(--timvir-text-color);}
4
4
  .s1k50njo{display:inline-block;color:var(--timvir-secondary-text-color);margin-right:6px;}
5
5
  .i1dajnne{border:none;outline:none;font:inherit;background:transparent;align-self:stretch;padding:0;width:100%;color:inherit;}
6
- .b128wsn{border:none;outline:none;height:36px;border:1px solid var(--timvir-border-color);border-radius:2px;background:var(--timvir-secondary-background-color);color:var(--timvir-text-color);font:inherit;}.b128wsn:hover{border-color:var(--timvir-text-color);background:var(--timvir-sidebar-highlight-color);}.b128wsn:active{border-color:var(--timvir-text-color);background:var(--timvir-sidebar-highlight-color);}
6
+ .b128wsn{border:none;outline:none;min-height:36px;border:1px solid var(--timvir-border-color);border-radius:2px;background:var(--timvir-secondary-background-color);color:var(--timvir-text-color);font:inherit;}.b128wsn:hover{border-color:var(--timvir-text-color);background:var(--timvir-sidebar-highlight-color);}.b128wsn:active{border-color:var(--timvir-text-color);background:var(--timvir-sidebar-highlight-color);}
7
7
 
8
8
  .tac6gx6{color:#393a34;background-color:#f6f8fa;}.tac6gx6 :is(.comment,.prolog,.doctype,.cdata){color:#999988;font-style:italic;}.tac6gx6 :is(.namespace){opacity:0.7;}.tac6gx6 :is(.string,.attr-value){color:#e3116c;}.tac6gx6 :is(.punctuation,.operator){color:#6cb6ff;}.tac6gx6 :is(.function,.delete,.tag){color:#d73a49;}.tac6gx6 :is(.tag,.selector,.keyword){color:#00009f;}.tac6gx6 :is(.function-variable){color:#6f42c1;}.tac6gx6 :is(.atrule,.keyword,.attr-name,.selector){color:#00a4db;}.tac6gx6 :is(.entity,.url,.symbol,.number,.boolean,.variable,.constant,.property,.regex,.inserted){color:#36acaa;}:root[data-timvir-theme="dark"] .tac6gx6{color:#adbac7;background-color:#2d333b;}:root[data-timvir-theme="dark"] .tac6gx6 :is(.comment,.prolog,.doctype,.cdata){color:#999988;font-style:italic;}:root[data-timvir-theme="dark"] .tac6gx6 :is(.namespace){opacity:0.7;}:root[data-timvir-theme="dark"] .tac6gx6 :is(.string,.attr-value){color:#96d0ff;}:root[data-timvir-theme="dark"] .tac6gx6 :is(.punctuation,.operator){color:#6cb6ff;}:root[data-timvir-theme="dark"] .tac6gx6 :is(.function,.delete,.tag){color:#d73a49;}:root[data-timvir-theme="dark"] .tac6gx6 :is(.tag,.selector,.keyword){color:#8ddb8c;}:root[data-timvir-theme="dark"] .tac6gx6 :is(.function-variable){color:#6f42c1;}:root[data-timvir-theme="dark"] .tac6gx6 :is(.atrule,.keyword,.attr-name,.selector){color:#f47067;}:root[data-timvir-theme="dark"] .tac6gx6 :is(.entity,.url,.symbol,.number,.boolean,.variable,.constant,.property,.regex,.inserted){color:#dcbdfb;}
9
9
 
@@ -13,13 +13,13 @@
13
13
  .s1hdfi6o{position:absolute;z-index:-1;top:0;right:0;transition:all 0.2s;transform:translate(48px,-48px);}.s1hdfi6o path{fill:var(--c-p-4);}
14
14
  .d17pltln{padding:16px 24px 16px 0;}
15
15
 
16
- .r9v2r0l{margin:1.5rem 0 3rem;}:root[data-timvir-theme="dark"] .r9v2r0l .shiki,:root[data-timvir-theme="dark"] .r9v2r0l .shiki span{color:var(--shiki-dark) !important;font-style:var(--shiki-dark-font-style) !important;font-weight:var(--shiki-dark-font-weight) !important;text-decoration:var(--shiki-dark-text-decoration) !important;}
17
- .cs7tint{overflow-x:auto;contain:content;font-size:0.8em;border-radius:5px;--timvir-b-Code-bleed:calc(var(--timvir-page-margin,24px) * 0.6666);--timvir-b-Code-inlinePadding:max(var(--timvir-b-Code-bleed),8px);padding:0;margin:0 calc(-1 * var(--timvir-b-Code-bleed));border:1px solid var(--timvir-border-color);}.cs7tint pre{margin:0;padding:16px 0;background-color:var(--timvir-secondary-background-color) !important;}.cs7tint pre code{display:block;}.cs7tint pre code .line{display:inline-block;position:relative;width:100%;}.cs7tint pre .line{padding-inline:var(--timvir-b-Code-inlinePadding);}
16
+ :root[data-timvir-theme="dark"] .r9v2r0l .shiki,:root[data-timvir-theme="dark"] .r9v2r0l .shiki span{color:var(--shiki-dark) !important;font-style:var(--shiki-dark-font-style) !important;font-weight:var(--shiki-dark-font-weight) !important;text-decoration:var(--shiki-dark-text-decoration) !important;}
17
+ .cs7tint{overflow-x:auto;contain:content;font-size:0.8em;border-radius:5px;--timvir-b-Code-bleed:calc(var(--timvir-margin,0px) * 0.6666);--timvir-b-Code-inlinePadding:max(var(--timvir-b-Code-bleed),8px);padding:0;margin:0 calc(-1 * var(--timvir-b-Code-bleed));border:1px solid var(--timvir-border-color);}.cs7tint pre{margin:0;padding:16px 0;background-color:var(--timvir-secondary-background-color) !important;}.cs7tint pre code{display:block;}.cs7tint pre code .line{display:inline-block;position:relative;width:100%;}.cs7tint pre .line{padding-inline:var(--timvir-b-Code-inlinePadding);}
18
18
  .fjvaz2s{display:grid;border-radius:0;box-shadow:none;margin-inline:0;grid-auto-rows:min-content;grid-template-columns:[le] 0 [lc] 1fr [rc] 0 [re];grid-column-gap:16px;}.fjvaz2s:hover{box-shadow:none;}@media (min-width:60rem){.fjvaz2s{grid-template-columns:[le] 1fr [lc] minmax(0,48rem) [rc] 1fr [re];grid-column-gap:24px;}}.fjvaz2s > *{grid-column:lc / re;}
19
19
  .lchll0h{padding-inline:var(--timvir-b-Code-inlinePadding);}
20
20
  .h1xcko1i{background-color:#ffe10044;}:root[data-timvir-theme="dark"] .h1xcko1i{background-color:rgba(174,124,20,0.15);}
21
21
  .ll2b9hx{display:inline-block;width:var(--timvir-b-Code-bleed);color:var(--timvir-secondary-text-color);text-align:right;padding-inline:4px;}
22
- .c5vr6r2{font-size:0.8125rem;line-height:1.1875;color:var(--timvir-secondary-text-color);margin-top:2px;}
22
+ .c5vr6r2{font-size:0.8125rem;line-height:1.1875;color:var(--timvir-secondary-text-color);margin-top:0.3em;}
23
23
 
24
24
 
25
25
  .r1f19pie{position:relative;}
@@ -35,9 +35,9 @@
35
35
  .a1y0tcvx:hover::before,.a1y0tcvx::before{box-shadow:0 0 0 2px var(--c-p-5);opacity:1;}
36
36
 
37
37
 
38
- .r1nql2f9{margin:0 0 1.5rem;--timvir-b-Exhibit-bleed:0px;--timvir-b-Exhibit-borderColor:var(--timvir-border-color);--timvir-b-Exhibit-background:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAoAAAAKCAAAAACoWZBhAAAAF0lEQVQI12P4BAI/QICBFCaYBPNJYQIAkUZftTbC4sIAAAAASUVORK5CYII=);}:root[data-timvir-theme="dark"] .r1nql2f9{--timvir-b-Exhibit-background:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAoAAAAKCAAAAACoWZBhAAAAFklEQVQI12NQBQF2EGAghQkmwXxSmADZJQiZ2ZZ46gAAAABJRU5ErkJggg==);}
39
- .c4ji594{display:flow-root;background:var(--timvir-b-Exhibit-background);margin:0 calc(-1 * var(--timvir-b-Exhibit-bleed));padding:var(--timvir-b-Exhibit-bleed);}
40
- .cf43jjx{font-size:0.8125rem;line-height:1.1875;color:var(--timvir-secondary-text-color);margin-top:2px;}
38
+ .r1nql2f9{--timvir-b-Exhibit-bleed:calc(var(--timvir-margin,0px) * 0.6666);--timvir-b-Exhibit-borderColor:var(--timvir-border-color);--timvir-b-Exhibit-background:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAoAAAAKCAIAAAACUFjqAAAAHElEQVR4AWP4/u07Mvr75y8yGlBpND6a6oGUBgAxMSSkDKa/pQAAAABJRU5ErkJggg==);}:root[data-timvir-theme="dark"] .r1nql2f9{--timvir-b-Exhibit-background:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAoAAAAKCAAAAACoWZBhAAAAFklEQVQI12NQBQF2EGAghQkmwXxSmADZJQiZ2ZZ46gAAAABJRU5ErkJggg==);}
39
+ .c4ji594{display:flow-root;background:var(--timvir-b-Exhibit-background);margin:0 calc(-1 * var(--timvir-b-Exhibit-bleed));padding:var(--timvir-b-Exhibit-bleed);border-radius:5px;}
40
+ .cf43jjx{font-size:0.8125rem;line-height:1.1875;color:var(--timvir-secondary-text-color);margin-top:0.3em;}
41
41
 
42
42
  .mby32tn{display:flex;align-items:baseline;font-size:0.9rem;font-weight:bold;transition:all 0.2s;}
43
43
  .rc7ivp5{padding:16px 0;}
@@ -49,7 +49,7 @@
49
49
  .dw285p4{overflow:hidden;transition:height 0.2s,opacity 0.2s 0.1s;}
50
50
  .dx3nfmc{outline:none;user-select:text;white-space:pre-wrap;overflow-wrap:break-word;}
51
51
 
52
- .r1c1ozpm{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:24px;}
52
+ .r1c1ozpm{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:var(--timvir-page-margin,24px);--timvir-margin:calc(var(--timvir-page-margin,24px) * 0.5);}
53
53
 
54
54
  .b1a0xzv7{background:white;place-self:stretch;border-radius:2px;transition:all 0.2s;box-shadow:0 0 0 0 rgba(0,0,0,0.1);}
55
55
  .g10obtzp{opacity:0;transition:all 0.2s;pointer-events:none;}
@@ -70,7 +70,7 @@
70
70
  .dobecwk{display:flex;justify-content:space-between;align-items:center;line-height:1;}
71
71
  .dho7t08{padding-top:6px;opacity:0.5;font-size:0.8em;line-height:1;}
72
72
 
73
- .fgdj0yb{font-size:0.75rem;color:var(--timvir-secondary-text-color);white-space:nowrap;display:flex;justify-content:space-between;align-items:center;}
73
+ .fgdj0yb{font-size:0.8125rem;line-height:1.1875;color:var(--timvir-secondary-text-color);white-space:nowrap;display:flex;justify-content:space-between;align-items:center;}
74
74
  .d1rc4zjh{cursor:pointer;}.d1rc4zjh:hover{color:var(--c-p-4);opacity:1;}.d1rc4zjh > svg{display:block;}
75
75
  .d1enfo6{overflow:hidden;transition:height 0.2s,opacity 0.2s 0.1s;}
76
76
  .d1watfn6{margin-top:12px;}
@@ -79,7 +79,7 @@
79
79
 
80
80
  .ssl4j8q{width:100%;display:block;height:16px;margin:8px 0;}
81
81
 
82
- .r1ouu0bc{contain:layout;}
82
+ .r1ouu0bc{contain:layout;margin-bottom:0;}
83
83
  .d1uj09ka{position:relative;}
84
84
  .d2uawyc{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);font-variant-numeric:tabular-nums;}
85
85
  .d8ms9m9{display:flex;align-items:stretch;justify-content:center;}
@@ -24,7 +24,7 @@ interface Props extends React.ComponentProps<typeof Root> {
24
24
  * highlighting. If you want to enable syntax highlighting in code blocks, use the
25
25
  * '<Code>' component from 'timvir/blocks'.
26
26
  */
27
- mdxComponents?: React.ComponentPropsWithoutRef<typeof MDXProvider>['components'];
27
+ mdxComponents?: React.ComponentPropsWithoutRef<typeof MDXProvider>["components"];
28
28
  /**
29
29
  * Search Configuration. When provided, then the Search menu will appear in the sidebar.
30
30
  */
@@ -1,6 +1,6 @@
1
1
  import * as React from "react";
2
2
  import { Node } from "../types";
3
- interface Props {
3
+ interface Props extends React.ComponentPropsWithoutRef<"nav"> {
4
4
  toc: readonly Node[];
5
5
  search?: {
6
6
  open: () => void;
@@ -1,4 +1,6 @@
1
+ import * as React from "react";
1
2
  export interface Node {
3
+ readonly icon?: React.ReactElement;
2
4
  readonly label: string;
3
5
  readonly path?: string;
4
6
  readonly children?: readonly Node[];
package/core/index.js CHANGED
@@ -58,34 +58,38 @@ function Footer(props, ref) {
58
58
  } = props;
59
59
  return /*#__PURE__*/React.createElement(Root$2, {
60
60
  ref: ref,
61
- className: cx_default(className, classes$6.root),
61
+ className: cx_default(className, classes$7.root),
62
62
  ...rest
63
63
  }, links && /*#__PURE__*/React.createElement("div", {
64
64
  className: grid
65
65
  }, /*#__PURE__*/React.createElement("div", {
66
- className: classes$6.linkGroups
66
+ className: classes$7.linkGroups
67
67
  }, links.map(({
68
68
  group,
69
69
  items
70
70
  }, i) => /*#__PURE__*/React.createElement("div", {
71
71
  key: i
72
72
  }, /*#__PURE__*/React.createElement("div", {
73
- className: classes$6.linkGroupTitle
73
+ className: classes$7.linkGroupTitle
74
74
  }, group), /*#__PURE__*/React.createElement("div", null, items.map(({
75
75
  label,
76
76
  href
77
77
  }, j) => /*#__PURE__*/React.createElement("a", {
78
78
  key: j,
79
79
  href: href,
80
- className: classes$6.link
80
+ className: classes$7.link
81
81
  }, label))))))), /*#__PURE__*/React.createElement("div", {
82
- className: cx_default(grid, classes$6.meta)
83
- }, /*#__PURE__*/React.createElement("div", null, "Built with ", /*#__PURE__*/React.createElement("a", {
82
+ className: cx_default(grid, classes$7.meta)
83
+ }, /*#__PURE__*/React.createElement("div", {
84
+ style: {
85
+ marginBottom: 0
86
+ }
87
+ }, "Built with ", /*#__PURE__*/React.createElement("a", {
84
88
  href: "https://timvir.vercel.app"
85
89
  }, "Timvir"))));
86
90
  }
87
91
  var Footer$1 = /*#__PURE__*/React.forwardRef(Footer);
88
- const classes$6 = {
92
+ const classes$7 = {
89
93
  root: "rwhrdvg",
90
94
  linkGroups: "l1u1x7q7",
91
95
  linkGroupTitle: "l1x5jo3a",
@@ -101,10 +105,10 @@ function Action(props) {
101
105
  ...rest
102
106
  } = props;
103
107
  return /*#__PURE__*/React.createElement("div", {
104
- className: classes$5.root,
108
+ className: classes$6.root,
105
109
  ...rest
106
110
  }, /*#__PURE__*/React.createElement("div", {
107
- className: classes$5.icon
111
+ className: classes$6.icon
108
112
  }, /*#__PURE__*/React.createElement("svg", {
109
113
  viewBox: "0 0 24 24",
110
114
  fill: "none",
@@ -120,10 +124,10 @@ function Action(props) {
120
124
  }), /*#__PURE__*/React.createElement("polyline", {
121
125
  points: "12 5 19 12 12 19"
122
126
  }))), /*#__PURE__*/React.createElement("div", {
123
- className: classes$5.label
127
+ className: classes$6.label
124
128
  }, label));
125
129
  }
126
- const classes$5 = {
130
+ const classes$6 = {
127
131
  root: "ru1mblv",
128
132
  icon: "i1wyx06o",
129
133
  label: "legxg01"
@@ -176,13 +180,13 @@ function Dialog(props) {
176
180
  })();
177
181
  }, [mutate, state.query]);
178
182
  return /*#__PURE__*/React.createElement("div", {
179
- className: classes$4.root,
183
+ className: classes$5.root,
180
184
  style: state.style,
181
185
  ...rest
182
186
  }, /*#__PURE__*/React.createElement("div", {
183
- className: classes$4.context
187
+ className: classes$5.context
184
188
  }, "Context"), /*#__PURE__*/React.createElement("div", {
185
- className: classes$4.prompt
189
+ className: classes$5.prompt
186
190
  }, /*#__PURE__*/React.createElement("input", {
187
191
  autoFocus: true,
188
192
  placeholder: "Type a command or search\u2026",
@@ -194,9 +198,9 @@ function Dialog(props) {
194
198
  });
195
199
  }
196
200
  })), /*#__PURE__*/React.createElement("div", null, /*#__PURE__*/React.createElement("div", {
197
- className: classes$4.subheader
201
+ className: classes$5.subheader
198
202
  }, "Pages"), /*#__PURE__*/React.createElement("div", {
199
- className: classes$4.commands
203
+ className: classes$5.commands
200
204
  }, state.commands.map(({
201
205
  node
202
206
  }, index) => /*#__PURE__*/React.createElement(Action, {
@@ -208,7 +212,7 @@ function Dialog(props) {
208
212
  }
209
213
  })))));
210
214
  }
211
- const classes$4 = {
215
+ const classes$5 = {
212
216
  root: "r1fo6voy",
213
217
  context: "c185xiij",
214
218
  prompt: "p1ky3ya3",
@@ -238,7 +242,7 @@ function Commands(props) {
238
242
  const containerElement = document.createElement("div");
239
243
  document.body.appendChild(containerElement);
240
244
  const reactPortal = /*#__PURE__*/ReactDOM.createPortal( /*#__PURE__*/React.createElement("div", {
241
- className: classes$3.root,
245
+ className: classes$4.root,
242
246
  onClick: ev => {
243
247
  if (ev.target === ev.currentTarget) {
244
248
  close();
@@ -254,7 +258,7 @@ function Commands(props) {
254
258
  });
255
259
  } else {
256
260
  const reactPortal = /*#__PURE__*/ReactDOM.createPortal( /*#__PURE__*/React.createElement("div", {
257
- className: classes$3.root,
261
+ className: classes$4.root,
258
262
  onClick: ev => {
259
263
  if (ev.target === ev.currentTarget) {
260
264
  close();
@@ -273,7 +277,7 @@ function Commands(props) {
273
277
  draft.open = false;
274
278
  if (draft.dialog) {
275
279
  const reactPortal = /*#__PURE__*/ReactDOM.createPortal( /*#__PURE__*/React.createElement("div", {
276
- className: classes$3.root
280
+ className: classes$4.root
277
281
  }, /*#__PURE__*/React.createElement(Dialog, {
278
282
  onDispose: () => {
279
283
  mutate(draft => {
@@ -317,7 +321,7 @@ function Commands(props) {
317
321
  }, [state.open]);
318
322
  return ((_state$dialog = state.dialog) === null || _state$dialog === void 0 ? void 0 : _state$dialog.reactPortal) ?? null;
319
323
  }
320
- const classes$3 = {
324
+ const classes$4 = {
321
325
  root: "rfei6z8"
322
326
  };
323
327
 
@@ -326,6 +330,9 @@ const classes$3 = {
326
330
  */
327
331
  const Root$1 = "div";
328
332
  function NavigationFooter(props, ref) {
333
+ const {
334
+ Link
335
+ } = useContext();
329
336
  const {
330
337
  prev,
331
338
  next,
@@ -335,37 +342,33 @@ function NavigationFooter(props, ref) {
335
342
  return /*#__PURE__*/React.createElement(Root$1, {
336
343
  ref: ref,
337
344
  ...rest,
338
- className: cx_default(className, "re625n1")
339
- }, /*#__PURE__*/React.createElement("div", {
340
- className: "d19gj27w"
345
+ className: cx_default(className, classes$3.root)
341
346
  }, /*#__PURE__*/React.createElement("div", {
342
- className: "d15ohs1l"
343
- }, prev && /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(SecondaryLabel, null, prev.context || "/"), /*#__PURE__*/React.createElement(PrimaryLink, {
344
- href: prev.href
345
- }, prev.label))), /*#__PURE__*/React.createElement("div", {
346
- className: "dczrd9z"
347
- }, next && /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(SecondaryLabel, null, next.context || "/"), /*#__PURE__*/React.createElement(PrimaryLink, {
348
- href: next.href
349
- }, next.label)))));
347
+ className: "de625n1"
348
+ }, prev && /*#__PURE__*/React.createElement(Link, {
349
+ href: prev.href,
350
+ className: "l19gj27w"
351
+ }, /*#__PURE__*/React.createElement(Context, null, /*#__PURE__*/React.createElement(Icons.ChevronLeft, null), " Previous"), /*#__PURE__*/React.createElement(Label, null, prev.label)), next && /*#__PURE__*/React.createElement(Link, {
352
+ href: next.href,
353
+ className: "l15ohs1l"
354
+ }, /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(Context, null, "Next ", /*#__PURE__*/React.createElement(Icons.ChevronRight, null)), /*#__PURE__*/React.createElement(Label, null, next.label)))));
350
355
  }
351
356
  var NavigationFooter$1 = /*#__PURE__*/React.forwardRef(NavigationFooter);
352
- const PrimaryLink = ({
353
- href,
354
- children
355
- }) => {
356
- const {
357
- Link
358
- } = useContext();
359
- return /*#__PURE__*/React.createElement(Link, {
360
- href: href,
361
- className: "lifnzb8"
362
- }, children);
357
+ function Label(props) {
358
+ return /*#__PURE__*/React.createElement("div", {
359
+ className: "dczrd9z",
360
+ ...props
361
+ });
362
+ }
363
+ function Context(props) {
364
+ return /*#__PURE__*/React.createElement("div", {
365
+ className: "difnzb8",
366
+ ...props
367
+ });
368
+ }
369
+ const classes$3 = {
370
+ root: "rymvrdu"
363
371
  };
364
- const SecondaryLabel = ({
365
- children
366
- }) => /*#__PURE__*/React.createElement("div", {
367
- className: "dymvrdu"
368
- }, children);
369
372
 
370
373
  function memoize(fn) {
371
374
  var cache = Object.create(null);
@@ -656,7 +659,9 @@ function SidebarItem(props) {
656
659
  style: {
657
660
  marginLeft: depth * 16
658
661
  }
659
- }, /*#__PURE__*/React.createElement("span", {
662
+ }, props.icon ? /*#__PURE__*/React.cloneElement(props.icon, {
663
+ className: classes$2.icn
664
+ }) : null, /*#__PURE__*/React.createElement("span", {
660
665
  className: classes$2.label
661
666
  }, label), icon) : /*#__PURE__*/React.createElement("a", {
662
667
  style: {
@@ -664,14 +669,17 @@ function SidebarItem(props) {
664
669
  },
665
670
  href: "#",
666
671
  onClick: () => setActive(x => !x)
667
- }, /*#__PURE__*/React.createElement("span", {
672
+ }, props.icon ? /*#__PURE__*/React.cloneElement(props.icon, {
673
+ className: classes$2.icn
674
+ }) : null, /*#__PURE__*/React.createElement("span", {
668
675
  className: classes$2.label
669
676
  }, label), icon));
670
677
  }
671
678
  const classes$2 = {
672
679
  root: "r28qe6v",
673
- label: "l1ia823q",
674
- icon: "i13ixk6c"
680
+ icn: "i1ia823q",
681
+ label: "l13ixk6c",
682
+ icon: "i7wcd3g"
675
683
  };
676
684
 
677
685
  function Section(props) {
@@ -716,34 +724,67 @@ const classes$1 = {
716
724
  };
717
725
 
718
726
  function Sidebar(props) {
727
+ const {
728
+ location
729
+ } = useContext();
719
730
  const {
720
731
  toc,
721
- search
732
+ search,
733
+ className,
734
+ ...rest
722
735
  } = props;
723
- const [state, mutate] = useImmer({
724
- shadowVisible: false
725
- });
726
- const onScroll = ev => {
727
- const shadowVisible = ev.currentTarget.scrollTop > 2;
728
- if (state.shadowVisible !== shadowVisible) {
729
- mutate(draft => {
730
- draft.shadowVisible = shadowVisible;
731
- });
736
+ const node = function find(nodes) {
737
+ for (const node of nodes) {
738
+ if (node.path === location.asPath) {
739
+ return node;
740
+ }
741
+ if (node.children) {
742
+ const n = find(node.children);
743
+ if (n) {
744
+ return n;
745
+ }
746
+ }
732
747
  }
733
- };
734
- return /*#__PURE__*/React.createElement("aside", {
735
- className: cx_default(classes.root)
748
+ }(toc);
749
+ return /*#__PURE__*/React.createElement("nav", {
750
+ className: cx_default(className, classes.root),
751
+ ...rest
752
+ }, /*#__PURE__*/React.createElement("header", {
753
+ className: "h17eoe18"
754
+ }, /*#__PURE__*/React.createElement("div", {
755
+ className: "d1mgn6rc"
736
756
  }, /*#__PURE__*/React.createElement("div", {
737
- className: "d17eoe18"
738
- }, search && /*#__PURE__*/React.createElement("div", {
739
- className: cx_default("d1mgn6rc", state.shadowVisible && "d7bx8iu")
757
+ className: "d7bx8iu"
758
+ }, "Timvir"), /*#__PURE__*/React.createElement("div", {
759
+ className: "d119ou0k"
760
+ }), /*#__PURE__*/React.createElement("div", null, "Docs")), search && /*#__PURE__*/React.createElement("div", {
761
+ className: cx_default("d1f74255")
740
762
  }, /*#__PURE__*/React.createElement(Search, {
741
763
  ...search
742
- })), /*#__PURE__*/React.createElement("div", {
743
- className: classes.sections,
744
- onScroll: onScroll
745
- }, /*#__PURE__*/React.createElement("nav", {
746
- className: classes.nav
764
+ }))), /*#__PURE__*/React.createElement("label", {
765
+ htmlFor: "menu",
766
+ className: "l5l3c45"
767
+ }, node !== null && node !== void 0 && node.icon ? /*#__PURE__*/React.cloneElement(node.icon, {
768
+ className: "c15ju3pv"
769
+ }) : null, /*#__PURE__*/React.createElement("span", null, (node === null || node === void 0 ? void 0 : node.label) ?? "Menu"), /*#__PURE__*/React.createElement(Icons.Menu, {
770
+ size: `1rem`,
771
+ className: "s2bwnbz"
772
+ })), /*#__PURE__*/React.createElement("input", {
773
+ type: "checkbox",
774
+ id: "menu",
775
+ className: "iu06l76",
776
+ onChange: ev => {
777
+ document.body.classList.toggle(classes.scrollLock, ev.currentTarget.checked);
778
+ }
779
+ }), /*#__PURE__*/React.createElement("div", {
780
+ className: classes.content
781
+ }, /*#__PURE__*/React.createElement("div", {
782
+ className: classes.sections
783
+ }, /*#__PURE__*/React.createElement("div", {
784
+ className: classes.nav,
785
+ onClick: () => {
786
+ document.body.classList.remove(classes.scrollLock);
787
+ }
747
788
  }, toc.map((c, i) => /*#__PURE__*/React.createElement(Section, {
748
789
  key: i,
749
790
  depth: 0,
@@ -751,9 +792,11 @@ function Sidebar(props) {
751
792
  }))))));
752
793
  }
753
794
  const classes = {
754
- root: "r119ou0k",
755
- sections: "s1f74255",
756
- nav: "n5l3c45"
795
+ scrollLock: "s56darb",
796
+ root: "rwbgl5x",
797
+ content: "c15aig6x",
798
+ sections: "svou0q5",
799
+ nav: "n1ibjf0n"
757
800
  };
758
801
  function Search(props) {
759
802
  const {
@@ -761,10 +804,10 @@ function Search(props) {
761
804
  label
762
805
  } = props;
763
806
  return /*#__PURE__*/React.createElement("div", {
764
- className: "d15ju3pv"
807
+ className: "da95449"
765
808
  }, /*#__PURE__*/React.createElement("div", {
766
809
  role: "button",
767
- className: "d2bwnbz",
810
+ className: "d1au8wkb",
768
811
  onClick: open
769
812
  }, /*#__PURE__*/React.createElement("svg", {
770
813
  x: "0px",
@@ -829,9 +872,8 @@ function Page(props, ref) {
829
872
  ref: ref,
830
873
  ...rest,
831
874
  className: cx_default(className, theme, "rfhjyp1")
832
- }, /*#__PURE__*/React.createElement("div", {
833
- className: "d1pp8z35"
834
875
  }, /*#__PURE__*/React.createElement(Sidebar, {
876
+ className: "s1pp8z35",
835
877
  toc: toc,
836
878
  search: search && {
837
879
  open: () => {
@@ -841,7 +883,7 @@ function Page(props, ref) {
841
883
  },
842
884
  ...search
843
885
  }
844
- })), /*#__PURE__*/React.createElement("div", {
886
+ }), /*#__PURE__*/React.createElement("div", {
845
887
  className: "dxk1fgw"
846
888
  }, /*#__PURE__*/React.createElement("div", {
847
889
  className: grid
package/core/styles.css CHANGED
@@ -1,13 +1,13 @@
1
1
 
2
- .g1et32pl{display:grid;--timvir-page-margin:16px;grid-auto-rows:min-content;grid-template-columns:[le] var(--timvir-page-margin) [lex lc] 1fr [rc rex] var(--timvir-page-margin) [re];}@media (min-width:48rem){.g1et32pl{--timvir-page-margin:24px;grid-template-columns:[le] var(--timvir-page-margin) [lex] 1fr [lc] minmax(0,48rem) [rc] 1fr [rex] var( --timvir-page-margin ) [re];}}@media (min-width:72rem){.g1et32pl{grid-template-columns:[le] 1fr var(--timvir-page-margin) [lex] minmax(0,12rem) [lc] 48rem [rc] minmax(0,12rem) [rex] var( --timvir-page-margin ) 1fr [re];}}.g1et32pl > *:not(.nc2e9vn){grid-column:lc / rc;min-width:0;}
2
+ .g1et32pl{display:grid;--timvir-page-margin:16px;--timvir-margin:var(--timvir-page-margin);grid-auto-rows:min-content;grid-template-columns:[le] var(--timvir-page-margin) [lex lc] 1fr [rc rex] var(--timvir-page-margin) [re];}@media (min-width:48rem){.g1et32pl{--timvir-page-margin:24px;grid-template-columns:[le] var(--timvir-page-margin) [lex] 1fr [lc] minmax(0,48rem) [rc] 1fr [rex] var( --timvir-page-margin ) [re];}}@media (min-width:72rem){.g1et32pl{grid-template-columns:[le] 1fr var(--timvir-page-margin) [lex] minmax(0,12rem) [lc] 48rem [rc] minmax(0,12rem) [rex] var( --timvir-page-margin ) 1fr [re];}}.g1et32pl > *:not(.nc2e9vn){grid-column:lc / rc;min-width:0;}.g1et32pl > *{margin:0 0 2rem;}.g1et32pl > p + ul{margin-top:-1.25rem;}
3
3
  .en6sn9p{grid-column:lex / rex;}
4
4
  .f3c539b{grid-column:le / re;}
5
5
 
6
- .rwhrdvg{padding:50px 0 30px;background:#20232a;color:white;display:grid;gap:50px;}
6
+ .rwhrdvg{padding:50px 0 30px;display:grid;gap:50px;border-top:1px solid var(--timvir-border-color);}
7
7
  .l1u1x7q7{display:grid;grid-template-columns:repeat(auto-fill,minmax(234px,1fr));grid-gap:32px;}
8
- .l1x5jo3a{text-transform:uppercase;color:var(--timvir-secondary-text-color);font-weight:700;letter-spacing:0.08em;margin-bottom:12px;}
9
- .l29wcr8{display:block;color:white;text-decoration:none;}.l29wcr8:hover{color:var(--c-p-4);}
10
- .m1ojti9g{color:var(--timvir-secondary-text-color);}.m1ojti9g a{color:currentColor;text-decoration:none;background-image:linear-gradient(transparent,transparent 5px,#383838 5px,#383838);background-position:bottom;background-size:100% 6px;background-repeat:repeat-x;}.m1ojti9g a:hover{background-image:linear-gradient(transparent,transparent 3px,#2bbc8a 3px,#2bbc8a);}
8
+ .l1x5jo3a{font-weight:600;margin-bottom:12px;}
9
+ .l29wcr8{display:block;color:inherit;text-decoration:none;}.l29wcr8:hover{color:var(--c-p-4);}
10
+ .m1ojti9g{color:var(--timvir-secondary-text-color);}.m1ojti9g a{color:inherit;text-decoration:none;background-image:linear-gradient(transparent,transparent 5px,#383838 5px,#383838);background-position:bottom;background-size:100% 6px;background-repeat:repeat-x;}.m1ojti9g a:hover{background-image:linear-gradient(transparent,transparent 3px,#2bbc8a 3px,#2bbc8a);}
11
11
 
12
12
  .t1amubg3{font-family:system-ui,sans-serif;font-feature-settings:"liga","kern";text-rendering:optimizelegibility;font-size:0.9375rem;line-height:1.7333;background-color:var(--timvir-background-color);color:var(--timvir-text-color);--c-p-0:#f0fcf6;--c-p-1:#d1f6e4;--c-p-2:#a0dbc1;--c-p-3:#61c19f;--c-p-4:#38a585;--c-p-5:#1b896b;}:root{box-sizing:border-box;scroll-padding-top:20px;}*,*:before,*:after{box-sizing:inherit;}:root{--timvir-background-color:#ffffff;--timvir-text-color:#000000c9;--timvir-secondary-text-color:#00000066;--timvir-secondary-background-color:#f9f8f9;--timvir-border-color:#e9e8ea;--timvir-sidebar-highlight-color:rgb(237,237,237);--timvir-accent-color:#38a585;}:root[data-timvir-theme="dark"]{--timvir-background-color:#1f2023;--timvir-text-color:rgba(255 255 255 / 0.86);--timvir-secondary-text-color:rgba(255 255 255 / 0.56);--timvir-secondary-background-color:#161618;--timvir-border-color:#27292f;--timvir-sidebar-highlight-color:rgb(41,43,47);--timvir-accent-color:#38a585;}
13
13
 
@@ -23,19 +23,19 @@
23
23
 
24
24
  .rfei6z8{position:fixed;inset:0px;display:flex;z-index:900;align-items:flex-start;justify-content:center;padding:13vh 16px 16px;font-family:system-ui,sans-serif;font-feature-settings:"liga","kern";text-rendering:optimizelegibility;font-size:16px;line-height:1.725;}
25
25
 
26
- .re625n1{padding:50px 0;background:#282c34;color:white;display:grid;grid-auto-rows:min-content;grid-template-columns:[le] 16px [lex lc] 1fr [rc rex] 16px [re];}@media (min-width:48rem){.re625n1{grid-template-columns:[le] 24px [lex] 1fr [lc] minmax(0,48rem) [rc] 1fr [rex] 24px [re];}}@media (min-width:72rem){.re625n1{grid-template-columns:[le] 1fr 24px [lex] minmax(0,12rem) [lc] 48rem [rc] minmax(0,12rem) [rex] 24px 1fr [re];}}.re625n1 > *{grid-column:lc / rc;}
27
- .d19gj27w{display:flex;align-items:flex-start;justify-content:space-between;}
28
- .d15ohs1l{display:flex;flex-direction:column;align-items:flex-start;justify-content:flex-start;text-align:left;}
29
- .dczrd9z{display:flex;flex-direction:column;align-items:flex-end;justify-content:flex-start;text-align:right;}
30
- .lifnzb8{font-size:1.2rem;color:inherit;text-decoration:none;}.lifnzb8:hover{color:var(--c-p-3);}
31
- .dymvrdu{opacity:0.5;}
26
+ .de625n1{display:flex;flex-direction:column-reverse;gap:1rem;font-size:0.875rem;line-height:1.5;}@media (min-width:48rem){.de625n1{flex-direction:row;}}
27
+ .l19gj27w{width:100%;display:flex;gap:4px;flex-direction:column;align-items:flex-start;justify-content:flex-end;text-align:left;border-radius:8px;border:1px solid var(--timvir-border-color);padding:16px;color:inherit;text-decoration:none;min-width:0;}.l19gj27w:hover{background-color:var(--timvir-secondary-background-color);}
28
+ .l15ohs1l{width:100%;display:flex;flex-direction:column;gap:4px;align-items:flex-end;justify-content:flex-start;text-align:right;border-radius:8px;border:1px solid var(--timvir-border-color);padding:16px;color:inherit;text-decoration:none;min-width:0;}.l15ohs1l:hover{background-color:var(--timvir-secondary-background-color);}
29
+ .dczrd9z{font-weight:500;overflow:hidden;text-overflow:ellipsis;max-width:100%;}
30
+ .difnzb8{color:var(--timvir-secondary-text-color);display:flex;align-items:center;margin-inline:-0.2em;}.difnzb8 svg{height:1.2em;width:1.2em;}
31
+ .rymvrdu{padding:50px 0 80px;display:grid;grid-auto-rows:min-content;grid-template-columns:[le] var(--timvir-page-margin) [lex lc] 1fr [rc rex] var(--timvir-page-margin) [re];}@media (min-width:48rem){.rymvrdu{grid-template-columns: [le] var(--timvir-page-margin) [lex] 1fr [lc] minmax(0,48rem) [rc] 1fr [rex] var(--timvir-page-margin) [re];}}@media (min-width:72rem){.rymvrdu{grid-template-columns: [le] 1fr var(--timvir-page-margin) [lex] minmax(0,12rem) [lc] 48rem [rc] minmax(0,12rem) [rex] var( --timvir-page-margin ) 1fr [re];}}.rymvrdu > *{grid-column:lc / rc;}
32
32
 
33
33
  .a12hs2f7{color:inherit;text-decoration:none;}.a12hs2f7:hover svg{opacity:1;transform:none;visibility:visible;--visibility-delay:0s;}
34
34
  .c31avqb{margin-left:6px;color:var(--timvir-secondary-text-color);height:0.9rem;width:0.9rem;vertical-align:middle;transition:opacity 0.2s,transform 0.2s,visibility 0s var(--visibility-delay,0.2s);opacity:0;visibility:hidden;transform:translateX(-50%);}
35
35
  .h6ceq1b{margin-top:3rem;margin-bottom:1rem;font-size:2rem;line-height:1.125;font-weight:590;text-indent:-0.05em;}
36
- .hj6166y{position:relative;margin-top:4.5rem;margin-bottom:0.5rem;font-size:1.5rem;line-height:1.1666;font-weight:590;}
37
- .h1f8mqks{position:relative;margin-top:3rem;margin-bottom:0.5rem;font-size:1.0625rem;line-height:1.4705882353;font-weight:590;}
38
- .h1hmga4{position:relative;margin-top:2rem;margin-bottom:0.5rem;font-size:0.9375rem;line-height:1.4375;font-weight:590;}
36
+ .hj6166y{position:relative;margin:2.5rem 0 1rem;font-size:1.5rem;line-height:1.1666;font-weight:590;}
37
+ .h1f8mqks{position:relative;margin:1rem 0 1rem;font-size:1.0625rem;line-height:1.4705882353;font-weight:590;}
38
+ .h1hmga4{position:relative;margin:1rem 0 1rem;font-size:0.9375rem;line-height:1.4375;font-weight:590;}
39
39
  .blrd6ep{margin-left:0;font-size:1.1rem;}.blrd6ep > *:first-child{margin-top:0;}.blrd6ep > *:last-child{margin-bottom:0;}
40
40
  .h172su6f{display:block;border:none;height:1px;width:100%;background:currentColor;opacity:0.25;}
41
41
  .t1a7p0gg{border-spacing:0;border-collapse:collapse;width:100%;overflow:auto;}
@@ -46,28 +46,37 @@
46
46
  .tvhsmuz{text-align:var(--tvhsmuz-0);padding:6px 13px;border:1px solid var(--c-p-2);}
47
47
  .c197eb99{border-radius:5px;padding:4px 6px 3px;font-size:0.8em;background:var(--timvir-secondary-background-color);border:1px solid var(--timvir-border-color);}
48
48
  .a1d7vdmn{color:currentColor;text-decoration:none;background-image:linear-gradient(transparent,transparent 5px,#383838 5px,#383838);background-position:bottom;background-size:100% 6px;background-repeat:repeat-x;}.a1d7vdmn:hover{background-image:linear-gradient(transparent,transparent 3px,#2bbc8a 3px,#2bbc8a);}.a1d7vdmn:hover .c197eb99{box-shadow:inset 0 0 0 1px rgba(16,22,26,0.5),inset 0 1px 4px rgba(16,22,26,0.2);}.a1d7vdmn:active .c197eb99{box-shadow:inset 0 0 0 1px rgba(16,22,26,0.7),inset 0 1px 4px rgba(16,22,26,0.4);background:var(--c-p-2);}
49
- .pgfnift{margin:0 0 1rem;}
50
- .u3pt2dg{margin:0 0 1rem;}
51
- .ojr9iky{margin:0 0 1rem;}
52
49
 
53
- .r28qe6v{display:flex;align-items:center;margin:1px 0;}.r28qe6v > a{min-width:0;transition:background 0.16s;border-radius:4px;display:flex;align-items:center;color:var(--timvir-text-color);font-size:0.8125rem;line-height:2.2;font-weight:500;background:none;text-decoration:none;width:100%;padding:0 8px;opacity:0.7;}.r28qe6v:hover a{background-color:var(--timvir-sidebar-highlight-color);opacity:1;}.r28qe6v[data-active="true"] a{background-color:var(--timvir-sidebar-highlight-color);opacity:1;}
54
- .l1ia823q{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-right:auto;}
55
- .i13ixk6c{margin-left:4px;transition:transform 0.12s cubic-bezier(0.455,0.03,0.515,0.955);transform-origin:center center;}
56
50
 
57
51
 
58
52
 
59
- .d17eoe18{display:none;height:0;}@media (min-width:60rem){.d17eoe18{display:flex;flex-direction:column;height:100%;}}
60
- .d1mgn6rc{padding:24px 0 0;flex-shrink:0;transition:all 0.16s;}
61
- .d7bx8iu{box-shadow:0 1px 0 rgba(16,22,26,0.15);}
62
- .r119ou0k{position:fixed;top:0;left:0;bottom:0;width:0;}@media (min-width:60rem){.r119ou0k{width:300px;}}
63
- .s1f74255{padding:16px 0 30px;overflow-y:auto;flex-grow:1;overscroll-behavior:contain;}
64
- .n5l3c45{padding-inline:16px;}
65
- .d15ju3pv{font-family:system-ui;padding:0 16px;}
66
- .d2bwnbz{color:var(--timvir-text-color);font-size:0.8125rem;line-height:2.2;font-weight:400;cursor:pointer;height:36px;border-radius:8px;padding:0 12px;border:1px solid var(--timvir-border-color);background:var(--timvir-secondary-background-color);display:flex;align-items:center;}.d2bwnbz:hover{background:var(--timvir-sidebar-highlight-color);}.d2bwnbz > svg{display:block;margin-right:8px;}
53
+ .r28qe6v{display:flex;align-items:center;margin:1px 0;font-size:0.9375rem;line-height:2.2;}@media (min-width:48rem){.r28qe6v{font-size:0.8125rem;}}@media (any-pointer:coarse){.r28qe6v > a{min-height:44px;}}.r28qe6v > a{min-width:0;transition:background 0.16s;border-radius:4px;display:flex;align-items:center;color:var(--timvir-text-color);font-weight:500;background:none;text-decoration:none;width:100%;padding:0 8px;opacity:0.7;}.r28qe6v:hover a{background-color:var(--timvir-sidebar-highlight-color);opacity:1;}.r28qe6v[data-active="true"] a{background-color:var(--timvir-sidebar-highlight-color);opacity:1;}
54
+ .i1ia823q{display:block;width:1.3em;height:1.3em;margin-right:8px;min-width:1.3em;}
55
+ .l13ixk6c{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-right:auto;}
56
+ .i7wcd3g{margin-left:4px;transition:transform 0.12s cubic-bezier(0.455,0.03,0.515,0.955);transform-origin:center center;width:1rem;height:1rem;}
67
57
 
68
- .rfhjyp1{min-height:100vh;display:grid;grid-template-columns:[l] 0 [m] 1fr [r];}@media (min-width:60rem){.rfhjyp1{grid-template-columns:[l] 300px [m] 1fr [r];}}
69
- .d1pp8z35{grid-column:l / m;border-right:1px solid var(--timvir-border-color);}
70
- .dxk1fgw{display:flex;flex-direction:column;grid-column:m / r;}
58
+
59
+
60
+ .h17eoe18{padding:0 var(--timvir-page-margin);height:3rem;display:flex;align-items:center;}@media (min-width:48rem){.h17eoe18{padding-top:24px;display:block;height:auto;}}
61
+ .d1mgn6rc{font-size:0.875rem;line-height:1.3125;display:flex;gap:16px;}
62
+ .d7bx8iu{font-weight:590;}
63
+ .d119ou0k{background-color:var(--timvir-border-color);width:1px;height:1.25rem;}
64
+ .d1f74255{flex-shrink:0;transition:all 0.16s;margin-top:16px;display:none;}@media (min-width:48rem){.d1f74255{display:block;}}
65
+ .l5l3c45{border-bottom:1px solid var(--timvir-border-color);padding:0 var(--timvir-page-margin);height:3rem;display:flex;align-items:center;cursor:pointer;}@media (min-width:48rem){.l5l3c45{display:none;}}
66
+ .c15ju3pv{display:block;width:1.3em;height:1.3em;margin-right:8px;min-width:1.3em;}
67
+ .s2bwnbz{margin-left:auto;}
68
+ .iu06l76{display:none;}
69
+ .s56darb{overflow-y:scroll;position:fixed;top:0px;width:100%;}
70
+ .rwbgl5x{display:flex;flex-direction:column;}@media (min-width:48rem){.rwbgl5x{height:100%;}}
71
+ .c15aig6x{display:none;background-color:var(--timvir-background-color);}#menu:checked ~ .c15aig6x{display:flex;position:fixed;top:6rem;left:0;right:0;bottom:0;}@media (min-width:48rem){.c15aig6x{display:flex;flex-direction:column;height:100%;position:static;overflow:hidden;}}
72
+ .svou0q5{padding:24px 0;overflow-y:auto;flex-grow:1;overscroll-behavior:auto;scroll-padding-block:24px;mask-image:linear-gradient( to bottom, transparent 0%, rgba(0,0,0,0.2) 12px, #000 24px, #000 calc(100% - 24px), rgba(0,0,0,0.2) calc(100% - 12px), transparent 100% );}
73
+ .n1ibjf0n{padding-inline:calc(var(--timvir-page-margin) - 8px);}@media (min-width:48rem){.n1ibjf0n{padding-inline:var(--timvir-page-margin);}}
74
+ .da95449{font-family:system-ui;}
75
+ .d1au8wkb{color:var(--timvir-text-color);font-size:0.8125rem;line-height:2.2;font-weight:400;cursor:pointer;min-height:36px;border-radius:8px;padding:0 12px;border:1px solid var(--timvir-border-color);background:var(--timvir-secondary-background-color);display:flex;align-items:center;}.d1au8wkb:hover{background:var(--timvir-sidebar-highlight-color);}.d1au8wkb > svg{display:block;margin-right:8px;width:0.75rem;height:0.75rem;}
76
+
77
+ .rfhjyp1{min-height:100vh;--timvir-page-margin:16px;display:grid;grid-template-areas:"navigation" "content";}@media (min-width:48rem){.rfhjyp1{--timvir-page-margin:24px;grid-template-areas:"navigation content";grid-template-columns:[l] 300px [m] 1fr [r];}}
78
+ .s1pp8z35{grid-area:navigation;z-index:80;background-color:var(--timvir-background-color);position:sticky;top:0;}@media (min-width:48rem){.s1pp8z35{position:fixed;top:0;bottom:0;left:0;width:300px;border-right:1px solid var(--timvir-border-color);}}
79
+ .dxk1fgw{display:flex;flex-direction:column;grid-area:content;}
71
80
  .d2srpki{margin-top:auto;}
72
81
  .d1hkiw6l{margin-top:auto;padding-top:80px;}
73
82
 
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "type": "module",
3
3
  "name": "timvir",
4
- "version": "0.2.17",
4
+ "version": "0.2.19",
5
5
  "license": "MIT",
6
6
  "sideEffects": false,
7
7
  "exports": {
package/styles.css CHANGED
@@ -1,9 +1,9 @@
1
1
  .r1ev38xg{margin:1em 0;}
2
2
  .c8hz158{display:grid;grid-gap:8px;grid-template-columns:1fr 100px;margin-bottom:8px;}
3
- .t1663phv{display:flex;align-items:center;padding:0 0 0 10px;height:36px;position:relative;background:var(--timvir-secondary-background-color);}.t1663phv::after{display:block;position:absolute;content:"";inset:0;pointer-events:none;border:1px solid var(--timvir-border-color);border-radius:2px;}.t1663phv:hover::after{border-color:var(--timvir-text-color);}.t1663phv:focus-within::after{border-color:var(--timvir-text-color);}
3
+ .t1663phv{display:flex;align-items:center;padding:0 0 0 10px;min-height:36px;position:relative;background:var(--timvir-secondary-background-color);}.t1663phv::after{display:block;position:absolute;content:"";inset:0;pointer-events:none;border:1px solid var(--timvir-border-color);border-radius:2px;}.t1663phv:hover::after{border-color:var(--timvir-text-color);}.t1663phv:focus-within::after{border-color:var(--timvir-text-color);}
4
4
  .s1k50njo{display:inline-block;color:var(--timvir-secondary-text-color);margin-right:6px;}
5
5
  .i1dajnne{border:none;outline:none;font:inherit;background:transparent;align-self:stretch;padding:0;width:100%;color:inherit;}
6
- .b128wsn{border:none;outline:none;height:36px;border:1px solid var(--timvir-border-color);border-radius:2px;background:var(--timvir-secondary-background-color);color:var(--timvir-text-color);font:inherit;}.b128wsn:hover{border-color:var(--timvir-text-color);background:var(--timvir-sidebar-highlight-color);}.b128wsn:active{border-color:var(--timvir-text-color);background:var(--timvir-sidebar-highlight-color);}
6
+ .b128wsn{border:none;outline:none;min-height:36px;border:1px solid var(--timvir-border-color);border-radius:2px;background:var(--timvir-secondary-background-color);color:var(--timvir-text-color);font:inherit;}.b128wsn:hover{border-color:var(--timvir-text-color);background:var(--timvir-sidebar-highlight-color);}.b128wsn:active{border-color:var(--timvir-text-color);background:var(--timvir-sidebar-highlight-color);}
7
7
 
8
8
  .tac6gx6{color:#393a34;background-color:#f6f8fa;}.tac6gx6 :is(.comment,.prolog,.doctype,.cdata){color:#999988;font-style:italic;}.tac6gx6 :is(.namespace){opacity:0.7;}.tac6gx6 :is(.string,.attr-value){color:#e3116c;}.tac6gx6 :is(.punctuation,.operator){color:#6cb6ff;}.tac6gx6 :is(.function,.delete,.tag){color:#d73a49;}.tac6gx6 :is(.tag,.selector,.keyword){color:#00009f;}.tac6gx6 :is(.function-variable){color:#6f42c1;}.tac6gx6 :is(.atrule,.keyword,.attr-name,.selector){color:#00a4db;}.tac6gx6 :is(.entity,.url,.symbol,.number,.boolean,.variable,.constant,.property,.regex,.inserted){color:#36acaa;}:root[data-timvir-theme="dark"] .tac6gx6{color:#adbac7;background-color:#2d333b;}:root[data-timvir-theme="dark"] .tac6gx6 :is(.comment,.prolog,.doctype,.cdata){color:#999988;font-style:italic;}:root[data-timvir-theme="dark"] .tac6gx6 :is(.namespace){opacity:0.7;}:root[data-timvir-theme="dark"] .tac6gx6 :is(.string,.attr-value){color:#96d0ff;}:root[data-timvir-theme="dark"] .tac6gx6 :is(.punctuation,.operator){color:#6cb6ff;}:root[data-timvir-theme="dark"] .tac6gx6 :is(.function,.delete,.tag){color:#d73a49;}:root[data-timvir-theme="dark"] .tac6gx6 :is(.tag,.selector,.keyword){color:#8ddb8c;}:root[data-timvir-theme="dark"] .tac6gx6 :is(.function-variable){color:#6f42c1;}:root[data-timvir-theme="dark"] .tac6gx6 :is(.atrule,.keyword,.attr-name,.selector){color:#f47067;}:root[data-timvir-theme="dark"] .tac6gx6 :is(.entity,.url,.symbol,.number,.boolean,.variable,.constant,.property,.regex,.inserted){color:#dcbdfb;}
9
9
 
@@ -13,13 +13,13 @@
13
13
  .s1hdfi6o{position:absolute;z-index:-1;top:0;right:0;transition:all 0.2s;transform:translate(48px,-48px);}.s1hdfi6o path{fill:var(--c-p-4);}
14
14
  .d17pltln{padding:16px 24px 16px 0;}
15
15
 
16
- .r9v2r0l{margin:1.5rem 0 3rem;}:root[data-timvir-theme="dark"] .r9v2r0l .shiki,:root[data-timvir-theme="dark"] .r9v2r0l .shiki span{color:var(--shiki-dark) !important;font-style:var(--shiki-dark-font-style) !important;font-weight:var(--shiki-dark-font-weight) !important;text-decoration:var(--shiki-dark-text-decoration) !important;}
17
- .cs7tint{overflow-x:auto;contain:content;font-size:0.8em;border-radius:5px;--timvir-b-Code-bleed:calc(var(--timvir-page-margin,24px) * 0.6666);--timvir-b-Code-inlinePadding:max(var(--timvir-b-Code-bleed),8px);padding:0;margin:0 calc(-1 * var(--timvir-b-Code-bleed));border:1px solid var(--timvir-border-color);}.cs7tint pre{margin:0;padding:16px 0;background-color:var(--timvir-secondary-background-color) !important;}.cs7tint pre code{display:block;}.cs7tint pre code .line{display:inline-block;position:relative;width:100%;}.cs7tint pre .line{padding-inline:var(--timvir-b-Code-inlinePadding);}
16
+ :root[data-timvir-theme="dark"] .r9v2r0l .shiki,:root[data-timvir-theme="dark"] .r9v2r0l .shiki span{color:var(--shiki-dark) !important;font-style:var(--shiki-dark-font-style) !important;font-weight:var(--shiki-dark-font-weight) !important;text-decoration:var(--shiki-dark-text-decoration) !important;}
17
+ .cs7tint{overflow-x:auto;contain:content;font-size:0.8em;border-radius:5px;--timvir-b-Code-bleed:calc(var(--timvir-margin,0px) * 0.6666);--timvir-b-Code-inlinePadding:max(var(--timvir-b-Code-bleed),8px);padding:0;margin:0 calc(-1 * var(--timvir-b-Code-bleed));border:1px solid var(--timvir-border-color);}.cs7tint pre{margin:0;padding:16px 0;background-color:var(--timvir-secondary-background-color) !important;}.cs7tint pre code{display:block;}.cs7tint pre code .line{display:inline-block;position:relative;width:100%;}.cs7tint pre .line{padding-inline:var(--timvir-b-Code-inlinePadding);}
18
18
  .fjvaz2s{display:grid;border-radius:0;box-shadow:none;margin-inline:0;grid-auto-rows:min-content;grid-template-columns:[le] 0 [lc] 1fr [rc] 0 [re];grid-column-gap:16px;}.fjvaz2s:hover{box-shadow:none;}@media (min-width:60rem){.fjvaz2s{grid-template-columns:[le] 1fr [lc] minmax(0,48rem) [rc] 1fr [re];grid-column-gap:24px;}}.fjvaz2s > *{grid-column:lc / re;}
19
19
  .lchll0h{padding-inline:var(--timvir-b-Code-inlinePadding);}
20
20
  .h1xcko1i{background-color:#ffe10044;}:root[data-timvir-theme="dark"] .h1xcko1i{background-color:rgba(174,124,20,0.15);}
21
21
  .ll2b9hx{display:inline-block;width:var(--timvir-b-Code-bleed);color:var(--timvir-secondary-text-color);text-align:right;padding-inline:4px;}
22
- .c5vr6r2{font-size:0.8125rem;line-height:1.1875;color:var(--timvir-secondary-text-color);margin-top:2px;}
22
+ .c5vr6r2{font-size:0.8125rem;line-height:1.1875;color:var(--timvir-secondary-text-color);margin-top:0.3em;}
23
23
 
24
24
 
25
25
  .r1f19pie{position:relative;}
@@ -35,9 +35,9 @@
35
35
  .a1y0tcvx:hover::before,.a1y0tcvx::before{box-shadow:0 0 0 2px var(--c-p-5);opacity:1;}
36
36
 
37
37
 
38
- .r1nql2f9{margin:0 0 1.5rem;--timvir-b-Exhibit-bleed:0px;--timvir-b-Exhibit-borderColor:var(--timvir-border-color);--timvir-b-Exhibit-background:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAoAAAAKCAAAAACoWZBhAAAAF0lEQVQI12P4BAI/QICBFCaYBPNJYQIAkUZftTbC4sIAAAAASUVORK5CYII=);}:root[data-timvir-theme="dark"] .r1nql2f9{--timvir-b-Exhibit-background:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAoAAAAKCAAAAACoWZBhAAAAFklEQVQI12NQBQF2EGAghQkmwXxSmADZJQiZ2ZZ46gAAAABJRU5ErkJggg==);}
39
- .c4ji594{display:flow-root;background:var(--timvir-b-Exhibit-background);margin:0 calc(-1 * var(--timvir-b-Exhibit-bleed));padding:var(--timvir-b-Exhibit-bleed);}
40
- .cf43jjx{font-size:0.8125rem;line-height:1.1875;color:var(--timvir-secondary-text-color);margin-top:2px;}
38
+ .r1nql2f9{--timvir-b-Exhibit-bleed:calc(var(--timvir-margin,0px) * 0.6666);--timvir-b-Exhibit-borderColor:var(--timvir-border-color);--timvir-b-Exhibit-background:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAoAAAAKCAIAAAACUFjqAAAAHElEQVR4AWP4/u07Mvr75y8yGlBpND6a6oGUBgAxMSSkDKa/pQAAAABJRU5ErkJggg==);}:root[data-timvir-theme="dark"] .r1nql2f9{--timvir-b-Exhibit-background:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAoAAAAKCAAAAACoWZBhAAAAFklEQVQI12NQBQF2EGAghQkmwXxSmADZJQiZ2ZZ46gAAAABJRU5ErkJggg==);}
39
+ .c4ji594{display:flow-root;background:var(--timvir-b-Exhibit-background);margin:0 calc(-1 * var(--timvir-b-Exhibit-bleed));padding:var(--timvir-b-Exhibit-bleed);border-radius:5px;}
40
+ .cf43jjx{font-size:0.8125rem;line-height:1.1875;color:var(--timvir-secondary-text-color);margin-top:0.3em;}
41
41
 
42
42
  .mby32tn{display:flex;align-items:baseline;font-size:0.9rem;font-weight:bold;transition:all 0.2s;}
43
43
  .rc7ivp5{padding:16px 0;}
@@ -49,7 +49,7 @@
49
49
  .dw285p4{overflow:hidden;transition:height 0.2s,opacity 0.2s 0.1s;}
50
50
  .dx3nfmc{outline:none;user-select:text;white-space:pre-wrap;overflow-wrap:break-word;}
51
51
 
52
- .r1c1ozpm{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:24px;}
52
+ .r1c1ozpm{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:var(--timvir-page-margin,24px);--timvir-margin:calc(var(--timvir-page-margin,24px) * 0.5);}
53
53
 
54
54
  .b1a0xzv7{background:white;place-self:stretch;border-radius:2px;transition:all 0.2s;box-shadow:0 0 0 0 rgba(0,0,0,0.1);}
55
55
  .g10obtzp{opacity:0;transition:all 0.2s;pointer-events:none;}
@@ -70,7 +70,7 @@
70
70
  .dobecwk{display:flex;justify-content:space-between;align-items:center;line-height:1;}
71
71
  .dho7t08{padding-top:6px;opacity:0.5;font-size:0.8em;line-height:1;}
72
72
 
73
- .fgdj0yb{font-size:0.75rem;color:var(--timvir-secondary-text-color);white-space:nowrap;display:flex;justify-content:space-between;align-items:center;}
73
+ .fgdj0yb{font-size:0.8125rem;line-height:1.1875;color:var(--timvir-secondary-text-color);white-space:nowrap;display:flex;justify-content:space-between;align-items:center;}
74
74
  .d1rc4zjh{cursor:pointer;}.d1rc4zjh:hover{color:var(--c-p-4);opacity:1;}.d1rc4zjh > svg{display:block;}
75
75
  .d1enfo6{overflow:hidden;transition:height 0.2s,opacity 0.2s 0.1s;}
76
76
  .d1watfn6{margin-top:12px;}
@@ -79,7 +79,7 @@
79
79
 
80
80
  .ssl4j8q{width:100%;display:block;height:16px;margin:8px 0;}
81
81
 
82
- .r1ouu0bc{contain:layout;}
82
+ .r1ouu0bc{contain:layout;margin-bottom:0;}
83
83
  .d1uj09ka{position:relative;}
84
84
  .d2uawyc{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);font-variant-numeric:tabular-nums;}
85
85
  .d8ms9m9{display:flex;align-items:stretch;justify-content:center;}
@@ -100,15 +100,15 @@
100
100
 
101
101
 
102
102
 
103
- .g1et32pl{display:grid;--timvir-page-margin:16px;grid-auto-rows:min-content;grid-template-columns:[le] var(--timvir-page-margin) [lex lc] 1fr [rc rex] var(--timvir-page-margin) [re];}@media (min-width:48rem){.g1et32pl{--timvir-page-margin:24px;grid-template-columns:[le] var(--timvir-page-margin) [lex] 1fr [lc] minmax(0,48rem) [rc] 1fr [rex] var( --timvir-page-margin ) [re];}}@media (min-width:72rem){.g1et32pl{grid-template-columns:[le] 1fr var(--timvir-page-margin) [lex] minmax(0,12rem) [lc] 48rem [rc] minmax(0,12rem) [rex] var( --timvir-page-margin ) 1fr [re];}}.g1et32pl > *:not(.nc2e9vn){grid-column:lc / rc;min-width:0;}
103
+ .g1et32pl{display:grid;--timvir-page-margin:16px;--timvir-margin:var(--timvir-page-margin);grid-auto-rows:min-content;grid-template-columns:[le] var(--timvir-page-margin) [lex lc] 1fr [rc rex] var(--timvir-page-margin) [re];}@media (min-width:48rem){.g1et32pl{--timvir-page-margin:24px;grid-template-columns:[le] var(--timvir-page-margin) [lex] 1fr [lc] minmax(0,48rem) [rc] 1fr [rex] var( --timvir-page-margin ) [re];}}@media (min-width:72rem){.g1et32pl{grid-template-columns:[le] 1fr var(--timvir-page-margin) [lex] minmax(0,12rem) [lc] 48rem [rc] minmax(0,12rem) [rex] var( --timvir-page-margin ) 1fr [re];}}.g1et32pl > *:not(.nc2e9vn){grid-column:lc / rc;min-width:0;}.g1et32pl > *{margin:0 0 2rem;}.g1et32pl > p + ul{margin-top:-1.25rem;}
104
104
  .en6sn9p{grid-column:lex / rex;}
105
105
  .f3c539b{grid-column:le / re;}
106
106
 
107
- .rwhrdvg{padding:50px 0 30px;background:#20232a;color:white;display:grid;gap:50px;}
107
+ .rwhrdvg{padding:50px 0 30px;display:grid;gap:50px;border-top:1px solid var(--timvir-border-color);}
108
108
  .l1u1x7q7{display:grid;grid-template-columns:repeat(auto-fill,minmax(234px,1fr));grid-gap:32px;}
109
- .l1x5jo3a{text-transform:uppercase;color:var(--timvir-secondary-text-color);font-weight:700;letter-spacing:0.08em;margin-bottom:12px;}
110
- .l29wcr8{display:block;color:white;text-decoration:none;}.l29wcr8:hover{color:var(--c-p-4);}
111
- .m1ojti9g{color:var(--timvir-secondary-text-color);}.m1ojti9g a{color:currentColor;text-decoration:none;background-image:linear-gradient(transparent,transparent 5px,#383838 5px,#383838);background-position:bottom;background-size:100% 6px;background-repeat:repeat-x;}.m1ojti9g a:hover{background-image:linear-gradient(transparent,transparent 3px,#2bbc8a 3px,#2bbc8a);}
109
+ .l1x5jo3a{font-weight:600;margin-bottom:12px;}
110
+ .l29wcr8{display:block;color:inherit;text-decoration:none;}.l29wcr8:hover{color:var(--c-p-4);}
111
+ .m1ojti9g{color:var(--timvir-secondary-text-color);}.m1ojti9g a{color:inherit;text-decoration:none;background-image:linear-gradient(transparent,transparent 5px,#383838 5px,#383838);background-position:bottom;background-size:100% 6px;background-repeat:repeat-x;}.m1ojti9g a:hover{background-image:linear-gradient(transparent,transparent 3px,#2bbc8a 3px,#2bbc8a);}
112
112
 
113
113
  .t1amubg3{font-family:system-ui,sans-serif;font-feature-settings:"liga","kern";text-rendering:optimizelegibility;font-size:0.9375rem;line-height:1.7333;background-color:var(--timvir-background-color);color:var(--timvir-text-color);--c-p-0:#f0fcf6;--c-p-1:#d1f6e4;--c-p-2:#a0dbc1;--c-p-3:#61c19f;--c-p-4:#38a585;--c-p-5:#1b896b;}:root{box-sizing:border-box;scroll-padding-top:20px;}*,*:before,*:after{box-sizing:inherit;}:root{--timvir-background-color:#ffffff;--timvir-text-color:#000000c9;--timvir-secondary-text-color:#00000066;--timvir-secondary-background-color:#f9f8f9;--timvir-border-color:#e9e8ea;--timvir-sidebar-highlight-color:rgb(237,237,237);--timvir-accent-color:#38a585;}:root[data-timvir-theme="dark"]{--timvir-background-color:#1f2023;--timvir-text-color:rgba(255 255 255 / 0.86);--timvir-secondary-text-color:rgba(255 255 255 / 0.56);--timvir-secondary-background-color:#161618;--timvir-border-color:#27292f;--timvir-sidebar-highlight-color:rgb(41,43,47);--timvir-accent-color:#38a585;}
114
114
 
@@ -124,19 +124,19 @@
124
124
 
125
125
  .rfei6z8{position:fixed;inset:0px;display:flex;z-index:900;align-items:flex-start;justify-content:center;padding:13vh 16px 16px;font-family:system-ui,sans-serif;font-feature-settings:"liga","kern";text-rendering:optimizelegibility;font-size:16px;line-height:1.725;}
126
126
 
127
- .re625n1{padding:50px 0;background:#282c34;color:white;display:grid;grid-auto-rows:min-content;grid-template-columns:[le] 16px [lex lc] 1fr [rc rex] 16px [re];}@media (min-width:48rem){.re625n1{grid-template-columns:[le] 24px [lex] 1fr [lc] minmax(0,48rem) [rc] 1fr [rex] 24px [re];}}@media (min-width:72rem){.re625n1{grid-template-columns:[le] 1fr 24px [lex] minmax(0,12rem) [lc] 48rem [rc] minmax(0,12rem) [rex] 24px 1fr [re];}}.re625n1 > *{grid-column:lc / rc;}
128
- .d19gj27w{display:flex;align-items:flex-start;justify-content:space-between;}
129
- .d15ohs1l{display:flex;flex-direction:column;align-items:flex-start;justify-content:flex-start;text-align:left;}
130
- .dczrd9z{display:flex;flex-direction:column;align-items:flex-end;justify-content:flex-start;text-align:right;}
131
- .lifnzb8{font-size:1.2rem;color:inherit;text-decoration:none;}.lifnzb8:hover{color:var(--c-p-3);}
132
- .dymvrdu{opacity:0.5;}
127
+ .de625n1{display:flex;flex-direction:column-reverse;gap:1rem;font-size:0.875rem;line-height:1.5;}@media (min-width:48rem){.de625n1{flex-direction:row;}}
128
+ .l19gj27w{width:100%;display:flex;gap:4px;flex-direction:column;align-items:flex-start;justify-content:flex-end;text-align:left;border-radius:8px;border:1px solid var(--timvir-border-color);padding:16px;color:inherit;text-decoration:none;min-width:0;}.l19gj27w:hover{background-color:var(--timvir-secondary-background-color);}
129
+ .l15ohs1l{width:100%;display:flex;flex-direction:column;gap:4px;align-items:flex-end;justify-content:flex-start;text-align:right;border-radius:8px;border:1px solid var(--timvir-border-color);padding:16px;color:inherit;text-decoration:none;min-width:0;}.l15ohs1l:hover{background-color:var(--timvir-secondary-background-color);}
130
+ .dczrd9z{font-weight:500;overflow:hidden;text-overflow:ellipsis;max-width:100%;}
131
+ .difnzb8{color:var(--timvir-secondary-text-color);display:flex;align-items:center;margin-inline:-0.2em;}.difnzb8 svg{height:1.2em;width:1.2em;}
132
+ .rymvrdu{padding:50px 0 80px;display:grid;grid-auto-rows:min-content;grid-template-columns:[le] var(--timvir-page-margin) [lex lc] 1fr [rc rex] var(--timvir-page-margin) [re];}@media (min-width:48rem){.rymvrdu{grid-template-columns: [le] var(--timvir-page-margin) [lex] 1fr [lc] minmax(0,48rem) [rc] 1fr [rex] var(--timvir-page-margin) [re];}}@media (min-width:72rem){.rymvrdu{grid-template-columns: [le] 1fr var(--timvir-page-margin) [lex] minmax(0,12rem) [lc] 48rem [rc] minmax(0,12rem) [rex] var( --timvir-page-margin ) 1fr [re];}}.rymvrdu > *{grid-column:lc / rc;}
133
133
 
134
134
  .a12hs2f7{color:inherit;text-decoration:none;}.a12hs2f7:hover svg{opacity:1;transform:none;visibility:visible;--visibility-delay:0s;}
135
135
  .c31avqb{margin-left:6px;color:var(--timvir-secondary-text-color);height:0.9rem;width:0.9rem;vertical-align:middle;transition:opacity 0.2s,transform 0.2s,visibility 0s var(--visibility-delay,0.2s);opacity:0;visibility:hidden;transform:translateX(-50%);}
136
136
  .h6ceq1b{margin-top:3rem;margin-bottom:1rem;font-size:2rem;line-height:1.125;font-weight:590;text-indent:-0.05em;}
137
- .hj6166y{position:relative;margin-top:4.5rem;margin-bottom:0.5rem;font-size:1.5rem;line-height:1.1666;font-weight:590;}
138
- .h1f8mqks{position:relative;margin-top:3rem;margin-bottom:0.5rem;font-size:1.0625rem;line-height:1.4705882353;font-weight:590;}
139
- .h1hmga4{position:relative;margin-top:2rem;margin-bottom:0.5rem;font-size:0.9375rem;line-height:1.4375;font-weight:590;}
137
+ .hj6166y{position:relative;margin:2.5rem 0 1rem;font-size:1.5rem;line-height:1.1666;font-weight:590;}
138
+ .h1f8mqks{position:relative;margin:1rem 0 1rem;font-size:1.0625rem;line-height:1.4705882353;font-weight:590;}
139
+ .h1hmga4{position:relative;margin:1rem 0 1rem;font-size:0.9375rem;line-height:1.4375;font-weight:590;}
140
140
  .blrd6ep{margin-left:0;font-size:1.1rem;}.blrd6ep > *:first-child{margin-top:0;}.blrd6ep > *:last-child{margin-bottom:0;}
141
141
  .h172su6f{display:block;border:none;height:1px;width:100%;background:currentColor;opacity:0.25;}
142
142
  .t1a7p0gg{border-spacing:0;border-collapse:collapse;width:100%;overflow:auto;}
@@ -147,28 +147,37 @@
147
147
  .tvhsmuz{text-align:var(--tvhsmuz-0);padding:6px 13px;border:1px solid var(--c-p-2);}
148
148
  .c197eb99{border-radius:5px;padding:4px 6px 3px;font-size:0.8em;background:var(--timvir-secondary-background-color);border:1px solid var(--timvir-border-color);}
149
149
  .a1d7vdmn{color:currentColor;text-decoration:none;background-image:linear-gradient(transparent,transparent 5px,#383838 5px,#383838);background-position:bottom;background-size:100% 6px;background-repeat:repeat-x;}.a1d7vdmn:hover{background-image:linear-gradient(transparent,transparent 3px,#2bbc8a 3px,#2bbc8a);}.a1d7vdmn:hover .c197eb99{box-shadow:inset 0 0 0 1px rgba(16,22,26,0.5),inset 0 1px 4px rgba(16,22,26,0.2);}.a1d7vdmn:active .c197eb99{box-shadow:inset 0 0 0 1px rgba(16,22,26,0.7),inset 0 1px 4px rgba(16,22,26,0.4);background:var(--c-p-2);}
150
- .pgfnift{margin:0 0 1rem;}
151
- .u3pt2dg{margin:0 0 1rem;}
152
- .ojr9iky{margin:0 0 1rem;}
153
150
 
154
- .r28qe6v{display:flex;align-items:center;margin:1px 0;}.r28qe6v > a{min-width:0;transition:background 0.16s;border-radius:4px;display:flex;align-items:center;color:var(--timvir-text-color);font-size:0.8125rem;line-height:2.2;font-weight:500;background:none;text-decoration:none;width:100%;padding:0 8px;opacity:0.7;}.r28qe6v:hover a{background-color:var(--timvir-sidebar-highlight-color);opacity:1;}.r28qe6v[data-active="true"] a{background-color:var(--timvir-sidebar-highlight-color);opacity:1;}
155
- .l1ia823q{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-right:auto;}
156
- .i13ixk6c{margin-left:4px;transition:transform 0.12s cubic-bezier(0.455,0.03,0.515,0.955);transform-origin:center center;}
157
151
 
158
152
 
159
153
 
160
- .d17eoe18{display:none;height:0;}@media (min-width:60rem){.d17eoe18{display:flex;flex-direction:column;height:100%;}}
161
- .d1mgn6rc{padding:24px 0 0;flex-shrink:0;transition:all 0.16s;}
162
- .d7bx8iu{box-shadow:0 1px 0 rgba(16,22,26,0.15);}
163
- .r119ou0k{position:fixed;top:0;left:0;bottom:0;width:0;}@media (min-width:60rem){.r119ou0k{width:300px;}}
164
- .s1f74255{padding:16px 0 30px;overflow-y:auto;flex-grow:1;overscroll-behavior:contain;}
165
- .n5l3c45{padding-inline:16px;}
166
- .d15ju3pv{font-family:system-ui;padding:0 16px;}
167
- .d2bwnbz{color:var(--timvir-text-color);font-size:0.8125rem;line-height:2.2;font-weight:400;cursor:pointer;height:36px;border-radius:8px;padding:0 12px;border:1px solid var(--timvir-border-color);background:var(--timvir-secondary-background-color);display:flex;align-items:center;}.d2bwnbz:hover{background:var(--timvir-sidebar-highlight-color);}.d2bwnbz > svg{display:block;margin-right:8px;}
154
+ .r28qe6v{display:flex;align-items:center;margin:1px 0;font-size:0.9375rem;line-height:2.2;}@media (min-width:48rem){.r28qe6v{font-size:0.8125rem;}}@media (any-pointer:coarse){.r28qe6v > a{min-height:44px;}}.r28qe6v > a{min-width:0;transition:background 0.16s;border-radius:4px;display:flex;align-items:center;color:var(--timvir-text-color);font-weight:500;background:none;text-decoration:none;width:100%;padding:0 8px;opacity:0.7;}.r28qe6v:hover a{background-color:var(--timvir-sidebar-highlight-color);opacity:1;}.r28qe6v[data-active="true"] a{background-color:var(--timvir-sidebar-highlight-color);opacity:1;}
155
+ .i1ia823q{display:block;width:1.3em;height:1.3em;margin-right:8px;min-width:1.3em;}
156
+ .l13ixk6c{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-right:auto;}
157
+ .i7wcd3g{margin-left:4px;transition:transform 0.12s cubic-bezier(0.455,0.03,0.515,0.955);transform-origin:center center;width:1rem;height:1rem;}
168
158
 
169
- .rfhjyp1{min-height:100vh;display:grid;grid-template-columns:[l] 0 [m] 1fr [r];}@media (min-width:60rem){.rfhjyp1{grid-template-columns:[l] 300px [m] 1fr [r];}}
170
- .d1pp8z35{grid-column:l / m;border-right:1px solid var(--timvir-border-color);}
171
- .dxk1fgw{display:flex;flex-direction:column;grid-column:m / r;}
159
+
160
+
161
+ .h17eoe18{padding:0 var(--timvir-page-margin);height:3rem;display:flex;align-items:center;}@media (min-width:48rem){.h17eoe18{padding-top:24px;display:block;height:auto;}}
162
+ .d1mgn6rc{font-size:0.875rem;line-height:1.3125;display:flex;gap:16px;}
163
+ .d7bx8iu{font-weight:590;}
164
+ .d119ou0k{background-color:var(--timvir-border-color);width:1px;height:1.25rem;}
165
+ .d1f74255{flex-shrink:0;transition:all 0.16s;margin-top:16px;display:none;}@media (min-width:48rem){.d1f74255{display:block;}}
166
+ .l5l3c45{border-bottom:1px solid var(--timvir-border-color);padding:0 var(--timvir-page-margin);height:3rem;display:flex;align-items:center;cursor:pointer;}@media (min-width:48rem){.l5l3c45{display:none;}}
167
+ .c15ju3pv{display:block;width:1.3em;height:1.3em;margin-right:8px;min-width:1.3em;}
168
+ .s2bwnbz{margin-left:auto;}
169
+ .iu06l76{display:none;}
170
+ .s56darb{overflow-y:scroll;position:fixed;top:0px;width:100%;}
171
+ .rwbgl5x{display:flex;flex-direction:column;}@media (min-width:48rem){.rwbgl5x{height:100%;}}
172
+ .c15aig6x{display:none;background-color:var(--timvir-background-color);}#menu:checked ~ .c15aig6x{display:flex;position:fixed;top:6rem;left:0;right:0;bottom:0;}@media (min-width:48rem){.c15aig6x{display:flex;flex-direction:column;height:100%;position:static;overflow:hidden;}}
173
+ .svou0q5{padding:24px 0;overflow-y:auto;flex-grow:1;overscroll-behavior:auto;scroll-padding-block:24px;mask-image:linear-gradient( to bottom, transparent 0%, rgba(0,0,0,0.2) 12px, #000 24px, #000 calc(100% - 24px), rgba(0,0,0,0.2) calc(100% - 12px), transparent 100% );}
174
+ .n1ibjf0n{padding-inline:calc(var(--timvir-page-margin) - 8px);}@media (min-width:48rem){.n1ibjf0n{padding-inline:var(--timvir-page-margin);}}
175
+ .da95449{font-family:system-ui;}
176
+ .d1au8wkb{color:var(--timvir-text-color);font-size:0.8125rem;line-height:2.2;font-weight:400;cursor:pointer;min-height:36px;border-radius:8px;padding:0 12px;border:1px solid var(--timvir-border-color);background:var(--timvir-secondary-background-color);display:flex;align-items:center;}.d1au8wkb:hover{background:var(--timvir-sidebar-highlight-color);}.d1au8wkb > svg{display:block;margin-right:8px;width:0.75rem;height:0.75rem;}
177
+
178
+ .rfhjyp1{min-height:100vh;--timvir-page-margin:16px;display:grid;grid-template-areas:"navigation" "content";}@media (min-width:48rem){.rfhjyp1{--timvir-page-margin:24px;grid-template-areas:"navigation content";grid-template-columns:[l] 300px [m] 1fr [r];}}
179
+ .s1pp8z35{grid-area:navigation;z-index:80;background-color:var(--timvir-background-color);position:sticky;top:0;}@media (min-width:48rem){.s1pp8z35{position:fixed;top:0;bottom:0;left:0;width:300px;border-right:1px solid var(--timvir-border-color);}}
180
+ .dxk1fgw{display:flex;flex-direction:column;grid-area:content;}
172
181
  .d2srpki{margin-top:auto;}
173
182
  .d1hkiw6l{margin-top:auto;padding-top:80px;}
174
183