ssstyles 1.0.2 → 1.0.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/css/all.css CHANGED
@@ -17,7 +17,10 @@
17
17
  @import "./toggle.css" layer(components);
18
18
  @import "./loading.css" layer(components);
19
19
  @import "./actionlink.css" layer(components);
20
+ @import "./avatar.css" layer(components);
21
+ @import "./comment.css" layer(components);
20
22
  @import "./carousel.css" layer(components);
21
23
  @import "./callout.css" layer(components);
22
24
  @import "./shadow.css" layer(components);
25
+ @import "./spoiler.css" layer(components);
23
26
  @import "./animation.css" layer(components);
package/css/avatar.css ADDED
@@ -0,0 +1,42 @@
1
+ [data-avatar] {
2
+ aspect-ratio: 1/1;
3
+ border-radius: 1000rem;
4
+ object-fit: cover;
5
+ background-color: var(--col-bg);
6
+ width: 1.5lh;
7
+ }
8
+
9
+ [data-avatar]:not(img) {
10
+ /* todo: auto-contrast */
11
+ display: inline-grid;
12
+ place-items: center;
13
+ width: 1.5lh;
14
+ padding: 0.3rem;
15
+ background-color: var(--col-fg2);
16
+ color: var(--col-bg);
17
+ overflow: hidden;
18
+ font-weight: 700;
19
+ }
20
+
21
+ a[href] > [data-avatar]:first-child:last-child {
22
+ position: relative;
23
+ border: 2px solid var(--col-accent);
24
+ translate: 0 0;
25
+ --t-translate: 0.2s;
26
+ z-index: 1;
27
+
28
+ &:hover {
29
+ translate: 0 -0.3rem;
30
+ z-index: 2;
31
+ border-color: var(--col-accent2);
32
+ }
33
+ }
34
+
35
+ [data-group]:not([data-group="vertical"])
36
+ > :is([data-avatar]:not(:first-child), a:has(> [data-avatar]):not(:first-child)) {
37
+ margin-inline-start: -0.6em;
38
+ }
39
+
40
+ [data-group="vertical"] > :is([data-avatar]:not(:first-child), a:has(> [data-avatar]):not(:first-child)) {
41
+ margin-block-start: -0.6em;
42
+ }
@@ -31,4 +31,14 @@ input[type="reset"] {
31
31
  &[data-button="accent2"] {
32
32
  --col-button: var(--col-accent2);
33
33
  }
34
+
35
+ &[data-button="bg"] {
36
+ --col-button: var(--col-bg);
37
+ color: var(--col-fg);
38
+ }
39
+
40
+ &[data-button="fg"] {
41
+ --col-button: var(--col-fg);
42
+ color: var(--col-bg);
43
+ }
34
44
  }
@@ -0,0 +1,68 @@
1
+ @property --body-width {
2
+ syntax: "<length>";
3
+ inherits: true;
4
+ }
5
+ @property --col-bg {
6
+ syntax: "<color>";
7
+ inherits: true;
8
+ }
9
+ @property --col-bg2 {
10
+ syntax: "<color>";
11
+ inherits: true;
12
+ }
13
+ @property --col-bg3 {
14
+ syntax: "<color>";
15
+ inherits: true;
16
+ }
17
+ @property --col-fg {
18
+ syntax: "<color>";
19
+ inherits: true;
20
+ }
21
+ @property --col-fg2 {
22
+ syntax: "<color>";
23
+ inherits: true;
24
+ }
25
+ @property --col-accent {
26
+ syntax: "<color>";
27
+ inherits: true;
28
+ }
29
+ @property --col-accent2 {
30
+ syntax: "<color>";
31
+ inherits: true;
32
+ }
33
+ @property --col-accent-contrast {
34
+ syntax: "<color>";
35
+ inherits: true;
36
+ }
37
+ @property --font {
38
+ syntax: "<string>";
39
+ inherits: true;
40
+ }
41
+ @property --font-mono {
42
+ syntax: "<string>";
43
+ inherits: true;
44
+ }
45
+ @property --font-accent {
46
+ syntax: "<string>";
47
+ inherits: true;
48
+ }
49
+ @property --font-size-min {
50
+ syntax: "<length>";
51
+ inherits: true;
52
+ }
53
+ @property --font-size-max {
54
+ syntax: "<length>";
55
+ inherits: true;
56
+ }
57
+ @property --line-height {
58
+ syntax: "<integer> | <length> | normal";
59
+ inherits: true;
60
+ }
61
+ @property --letter-spacing {
62
+ syntax: "<length>";
63
+ inherits: true;
64
+ }
65
+ @property --border-radius {
66
+ syntax: "<length>";
67
+ inherits: true;
68
+ }
package/css/base/typo.css CHANGED
@@ -5,7 +5,7 @@
5
5
 
6
6
  :root {
7
7
  font-family: var(--font);
8
- font-size: min(max(var(--font-size-min), 1.5vw), var(--font-size-max));
8
+ font-size: round(min(max(var(--font-size-min), 1.5vw), var(--font-size-max)), 1px);
9
9
  line-height: var(--line-height);
10
10
  letter-spacing: var(--letter-spacing);
11
11
  text-wrap: balance;
package/css/base.css CHANGED
@@ -1,3 +1,4 @@
1
+ @import "./base/config.css" layer(ssstyles_base);
1
2
  @import "./themes/default.css" layer(ssstyles_base);
2
3
  @import "./base/highcontrast.css" layer(ssstyles_base);
3
4
  @import "./base/colors.css" layer(ssstyles_base);
package/css/card.css CHANGED
@@ -5,11 +5,16 @@
5
5
  color: var(--col-fg);
6
6
  border-radius: var(--br-tl, var(--border-radius)) var(--br-tr, var(--border-radius))
7
7
  var(--br-br, var(--border-radius)) var(--br-bl, var(--border-radius));
8
- padding: 1rem 1ch;
9
- overflow: hidden;
8
+ padding: 1rem;
9
+
10
10
  --t-translate: 0.25s;
11
11
  translate: 0 0;
12
12
 
13
+ > * + * {
14
+ margin-block-start: 1rem;
15
+ margin-block-end: 0;
16
+ }
17
+
13
18
  > [data-card-link] {
14
19
  position: absolute;
15
20
  inset: 0;
@@ -29,22 +34,27 @@
29
34
 
30
35
  > header {
31
36
  background-color: var(--col-bg3);
32
- margin: -1rem -1ch 1rem;
33
- padding: 1rem 1ch;
37
+ margin: -1rem -1rem 1rem;
38
+ padding: 1rem;
39
+ border-radius: var(--br-tl, var(--border-radius)) var(--br-tr, var(--border-radius)) 0 0;
34
40
  font-size: 1.2rem;
35
41
  font-weight: 600;
36
42
  }
37
43
 
38
44
  > footer {
39
45
  background-color: var(--col-bg3);
40
- margin: 1rem -1ch -1rem;
41
- padding: 1rem 1ch;
46
+ margin: 1rem -1rem -1rem;
47
+ padding: 1rem 1rem;
48
+ border-radius: 0 0 var(--br-br, var(--border-radius)) var(--br-bl, var(--border-radius));
42
49
  }
43
50
 
44
51
  > [data-card-background] {
45
52
  position: relative;
46
- margin: -1rem -1ch;
47
- max-width: calc(100% + 2ch);
53
+ margin: -1rem;
54
+ max-width: calc(100% + 2rem);
55
+ border-radius: var(--br-tl, var(--border-radius)) var(--br-tr, var(--border-radius))
56
+ var(--br-br, var(--border-radius)) var(--br-bl, var(--border-radius));
57
+ overflow: hidden;
48
58
 
49
59
  & * {
50
60
  max-width: 100%;
package/css/carousel.css CHANGED
@@ -1,5 +1,6 @@
1
1
  [data-carousel] {
2
2
  display: flex;
3
+ align-items: flex-start;
3
4
  gap: 1rem;
4
5
  overflow-x: auto;
5
6
  scroll-snap-type: x mandatory;
@@ -0,0 +1,39 @@
1
+ /* todo: logical properties! */
2
+ [data-comment] {
3
+ position: relative;
4
+ margin: 2rem 0;
5
+ margin-left: calc(2rem * var(--level, 0));
6
+
7
+ > [data-comment] {
8
+ --level: 1;
9
+ }
10
+
11
+ &[data-card] {
12
+ display: block;
13
+ }
14
+
15
+ &::before {
16
+ content: "";
17
+ position: absolute;
18
+ top: -1rem;
19
+ left: calc(-2rem * var(--level, 0));
20
+ bottom: -1rem;
21
+ width: calc(2rem * var(--level, 0));
22
+ background: repeating-linear-gradient(
23
+ to right,
24
+ var(--col-fg2),
25
+ var(--col-fg2) 2px,
26
+ transparent 2px,
27
+ transparent 2rem
28
+ )
29
+ 0.5rem;
30
+ }
31
+
32
+ > header {
33
+ font-weight: 600;
34
+
35
+ * {
36
+ vertical-align: middle;
37
+ }
38
+ }
39
+ }
@@ -0,0 +1,14 @@
1
+ [data-spoiler] {
2
+ background-color: currentColor;
3
+ cursor: pointer;
4
+ speak: never;
5
+
6
+ &:focus-within {
7
+ background-color: transparent;
8
+ speak: auto;
9
+
10
+ @media (prefers-reduced-motion: no-preference) {
11
+ transition: background-color 1s ease-out;
12
+ }
13
+ }
14
+ }
package/dist/all.css CHANGED
@@ -1 +1 @@
1
- @layer base,layout,components;@layer base{@layer ssstyles_base{:root{--body-width: 45rem;--col-bg: #eee;--col-bg2: #e8e8e8;--col-bg3: #dfdfdf;--col-fg: #333;--col-fg2: #7c8386;--col-accent: #b2033a;--col-accent2: #1c618f;--col-accent-contrast: #eee;--font: Inter, Roboto, "Helvetica Neue", "Arial Nova", "Nimbus Sans", Arial, sans-serif;--font-mono: Consolas, monaco, "Ubuntu Mono", "Liberation Mono", "Courier New", Courier, monospace;--font-accent: var(--font);--font-size-min: 1rem;--font-size-max: 1.2rem;--line-height: 1.6;--letter-spacing: .01875em;--border-radius: 10px}@media (prefers-color-scheme: dark){:root{--col-bg: #15181a;--col-bg2: #161e21;--col-bg3: #1a2225;--col-fg: #eee;--col-fg2: #7c8386;--col-accent: #ff297a;--col-accent2: #72c4ff;--col-accent-contrast: #111}}}}@layer base{@layer ssstyles_base{@media (prefers-contrast: more){:root{--col-bg: #fff;--col-bg2: #fff;--col-bg3: #fff;--col-fg: #000;--col-fg2: #000;--col-accent: #800;--col-accent2: #00f;--col-accent-contrast: #fff}}@media (prefers-contrast: more) and (prefers-color-scheme: dark){:root{--col-bg: #000;--col-bg2: #000;--col-bg3: #000;--col-fg: #fff;--col-fg2: #fff;--col-accent: #ff0;--col-accent2: #0ff;--col-accent-contrast: #000}}}}@layer base{@layer ssstyles_base{:root{color-scheme:light dark;background-color:var(--col-bg);color:var(--col-fg)}*{accent-color:var(--col-accent)}a:not([data-button]){color:var(--col-accent);&:hover{color:var(--col-accent2)}}}}@layer base{@layer ssstyles_base{*{box-sizing:border-box}body{max-width:var(--body-width);margin:auto;padding:0 1rem;word-wrap:break-word;>:is(header,footer){position:relative;margin:0 calc((50vw - 50%)*-1 + 1rem);padding:2rem calc(50vw - 50% - 1rem);background:var(--col-bg3);&:before{content:"";position:absolute;inset:0;box-shadow:-2rem 0 0 0 var(--col-bg3),2rem 0 0 0 var(--col-bg3);z-index:-1}}&:not(:has(header)){padding-top:1rem}&:not(:has(footer)){padding-bottom:1rem}>header{margin-bottom:1rem}>footer{margin-top:5rem}}figure,video,canvas,iframe{display:block;max-width:100%;margin-inline-start:0;margin-inline-end:0}img,svg{max-width:100%;height:auto;vertical-align:text-bottom}}}@layer base{@layer ssstyles_base{*{word-break:break-word;hyphens:auto}:root{font-family:var(--font);font-size:min(max(var(--font-size-min),1.5vw),var(--font-size-max));line-height:var(--line-height);letter-spacing:var(--letter-spacing);text-wrap:balance;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}h1{font-size:3rem;font-family:var(--font-accent, var(--font))}h2,h3,h4,h5,h6{margin-top:3.5rem;font-family:var(--font-accent, var(--font))}input,button,textarea,select{font:inherit}}}@layer base{@layer ssstyles_base{fieldset{background-color:var(--col-bg2);border-radius:var(--br-tl, var(--border-radius)) var(--br-tr, var(--border-radius)) var(--br-br, var(--border-radius)) var(--br-bl, var(--border-radius));border-color:var(--col-bg3);border-style:solid;:is(input:not(:is([type=button],[type=submit],[type=reset])),textarea,select){background-color:color-mix(in lch,var(--col-bg2) 95%,var(--col-fg));border-color:var(--col-fg2)}}input:not(:is([type=button],[type=submit],[type=reset])),textarea,select{padding:.1rem 1ch;background-color:var(--col-bg2);border:.125rem solid var(--col-fg2);--br-tl: var(--border-radius);--br-tr: var(--border-radius);--br-bl: var(--border-radius);--br-br: var(--border-radius);border-radius:var(--br-tl) var(--br-tr) var(--br-br) var(--br-bl)}textarea{max-width:100%}select{-webkit-appearance:none;background:url(data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20height%3D%2740%27%20width%3D%27100%27%20fill%3D%22%23888%22%3E%3Cpolygon%20points%3D%220%2C0%2050%2C40%20100%2C0%22%2F%3E%3C%2Fsvg%3E) calc(100% - .8rem) 50%/.8rem no-repeat;padding-right:2rem}}}@layer base{@layer ssstyles_base{button,[data-button],input[type=submit],input[type=button],input[type=reset]{--col-button: var(--col-accent);--col-button2: var(--col-button);--pos-gradient: -.25rem;padding:.25rem 1ch;border:none;border-radius:var(--br-tl, var(--border-radius)) var(--br-tr, var(--border-radius)) var(--br-br, var(--border-radius)) var(--br-bl, var(--border-radius));color:var(--col-accent-contrast);font-weight:500;text-decoration:none;cursor:pointer;background:linear-gradient(to bottom,var(--col-button2) calc(100% + var(--pos-gradient)),color-mix(in oklab,var(--col-button2),black 20%) calc(100% + var(--pos-gradient)));&:hover:not(:is([disabled],[aria-disabled])){--col-button2: color-mix(in oklab, var(--col-button), white 10%)}&:active:not(:is([disabled],[aria-disabled])){--pos-gradient: -.35rem}&[data-button=accent2]{--col-button: var(--col-accent2)}}}}@layer base{@layer ssstyles_base{table{border-collapse:collapse;table-layout:fixed;min-width:100%}figure:has(table){overflow-x:auto}thead{border-bottom:.125rem solid var(--col-bg3)}tbody tr:nth-child(2n){background-color:var(--col-bg2)}td,th{padding:.5rem 1ch;text-align:left;vertical-align:top;white-space:nowrap}tfoot{border-top:.125rem solid var(--col-bg3)}dl{& dd{margin-inline-start:.5ch;&:before{content:"\251c";margin-inline-end:.5ch;font-family:var(--font-mono);font-size:2em;position:relative;top:.4rem;line-height:0;color:var(--col-fg2)}&:last-of-type:before,&:has(+dt):before{content:"\2514"}}}}}@layer base{@layer ssstyles_base{details{background-color:var(--col-bg2);border-color:var(--col-bg3);border-style:solid;border-radius:var(--br-tl, var(--border-radius)) var(--br-tr, var(--border-radius)) var(--br-br, var(--border-radius)) var(--br-bl, var(--border-radius));padding:.5rem 1ch;>summary{position:relative;font-weight:500;cursor:pointer;padding-left:1rem;list-style-type:none;&::marker,&::-webkit-details-marker{display:none}&:before{content:"";position:absolute;left:-1ch;width:0;height:0;border:.5rem solid transparent;border-left:.5rem solid var(--col-accent);transform:translate(.625rem,.25lh) rotate(var(--dstr, 0deg));transform-origin:25% center;transition:transform .1s ease-out}&:hover:before{border-left-color:var(--col-accent2)}}&[open]>summary{margin-bottom:1rem;&:before{--dstr: 90deg}}}}}@layer base{@layer ssstyles_base{blockquote{margin:1rem 0;padding:1rem 2ch;border-radius:var(--br-tl, var(--border-radius)) var(--br-tr, var(--border-radius)) var(--br-br, var(--border-radius)) var(--br-bl, var(--border-radius));background:var(--col-bg2);font-size:1.2rem;font-style:italic;border:2px solid var(--col-bg3);>footer{font-size:1rem;margin:1rem 0 0 2ch;font-style:normal;&:before{content:"\2014 "}cite{font-style:italic}}}figure>blockquote{margin:0}}}@layer base{@layer ssstyles_base{code,kbd,pre{background:var(--col-bg2);border:.125rem solid var(--col-bg3);border-radius:var(--br-tl, var(--border-radius)) var(--br-tr, var(--border-radius)) var(--br-br, var(--border-radius)) var(--br-bl, var(--border-radius));padding:.05rem .5ch;font-size:.8rem;font-family:var(--font-mono);font-weight:600;color:var(--col-accent2);max-width:100%;overflow:auto;text-wrap:nowrap}pre{padding:.5rem;margin:1rem 0}kbd{border-bottom:.25rem solid var(--col-bg3);border-radius:var(--border-radius) var(--border-radius) 5px 5px;font-weight:700}pre code,code pre{background:inherit;font-size:inherit;color:inherit;border:0;margin:0;padding:0}code pre{display:inline}}}@layer base{@layer ssstyles_base{@keyframes dialog-fade-in{0%{opacity:0;translate:0 1rem}to{opacity:1;translate:0 0}}body:has(dialog[open]){overflow:hidden}dialog{padding:1rem 2ch;border:.125rem solid var(--col-bg3);background:var(--col-bg);@media (prefers-reduced-motion: no-preference){animation:dialog-fade-in .1s ease-out}>header{background:var(--col-bg3);margin:-1rem -2ch 1rem;padding:1rem 2ch;font-weight:700}&::backdrop{background:rgba(0,0,0,.4);backdrop-filter:blur(4px);animation:fade-in .1s ease-out}}}}@layer base{@layer ssstyles_base{hr{border:.125rem solid var(--col-bg3);border-radius:var(--border-radius);margin:5rem 0}[disabled],[aria-disabled]{cursor:not-allowed;filter:saturate(0)}abbr{cursor:help}mark{background-color:var(--col-accent2);color:var(--col-accent-contrast)}}}@layer base;@layer base{*{transition:transform var(--t-transform, 0s) ease-out,translate var(--t-translate, 0s) ease-out,rotate var(--t-rotate, 0s) ease-out,scale var(--t-scale, 0s) ease-out,box-shadow var(--t-box-shadow, 0s) ease-out,color var(--t-color, 0s) ease-out,background var(--t-background, 0s) ease-out,border-color var(--t-border-color, 0s) ease-out,filter var(--t-filter, 0s) ease-out,opacity var(--t-opacity, 0s) ease-out}}@layer layout{:root{--basegrid: "header ." "nav side" "content side" "footer .";--basegrid-rows: max-content max-content auto max-content;--basegrid-cols: 100% 20ch}body{display:grid;min-height:100vh;grid-auto-columns:1fr;grid-template-columns:var(--basegrid-cols);grid-template-rows:var(--basegrid-rows);gap:0 1rem;grid-template-areas:var(--basegrid)}body>header{grid-area:header}body>nav{grid-area:nav}body>main{grid-area:content}body>footer{grid-area:footer}body>aside{grid-area:side}@media (min-width: 85rem){[data-nav]{grid-area:side;>ul>li{width:100%;margin-bottom:1rem}}}}@layer layout{[data-flexgrid]{display:flex;flex-wrap:wrap;gap:1rem;>*{flex:1 1 auto}}}@layer layout{[data-group]{display:inline-flex;flex-wrap:wrap;gap:1px;border-radius:var(--br-tl, var(--border-radius)) var(--br-tr, var(--border-radius)) var(--br-br, var(--border-radius)) var(--br-bl, var(--border-radius));&:not([data-group=vertical]){>*:first-child{--br-tr: 0;--br-br: 0}>*:not(:first-child):not(:last-child){--br-tl: 0;--br-tr: 0;--br-bl: 0;--br-br: 0}>*:last-child{--br-tl: 0;--br-bl: 0}}&[data-group=vertical]{flex-direction:column;>*:first-child{--br-bl: 0;--br-br: 0}>*:not(:first-child):not(:last-child){--br-tl: 0;--br-tr: 0;--br-bl: 0;--br-br: 0}>*:last-child{--br-tr: 0;--br-tl: 0}}}}@layer layout{[data-breakout]{--col-breakout: var(--col-bg);position:relative;background:var(--col-breakout);margin:0 calc((50vw - 50%)*-1 + 1rem);padding:1rem calc(50vw - 50% - 1rem);&:before{content:"";position:absolute;inset:0;box-shadow:-2rem 0 0 0 var(--col-breakout),2rem 0 0 0 var(--col-breakout);z-index:-1}}[data-breakout=bg]{--col-breakout: var(--col-bg)}[data-breakout=bg2]{--col-breakout: var(--col-bg2)}[data-breakout=bg3]{--col-breakout: var(--col-bg3)}[data-breakout=accent]{--col-breakout: var(--col-accent);color:var(--col-accent-contrast)}[data-breakout=accent2]{--col-breakout: var(--col-accent2);color:var(--col-accent-contrast)}[data-breakout=fg]{--col-breakout: var(--col-fg);color:var(--col-bg)}[data-breakout=fg2]{--col-breakout: var(--col-fg2);color:var(--col-bg)}}@layer layout{[data-autogrid]{--gap: 1rem;display:grid;grid-template-columns:repeat(auto-fit,minmax(var(--grid-item-width),1fr));justify-items:stretch;align-items:flex-start;gap:var(--gap)}[data-autogrid="1/4"]{--grid-item-width: max(calc(25% - var(--gap) * 3), 140px)}[data-autogrid="1/3"]{--grid-item-width: max(calc(33% - var(--gap) * 2), 200px)}[data-autogrid="1/2"]{--grid-item-width: max(calc(50% - var(--gap)), 240px)}}@layer components{[data-hint=nolist]{list-style:none;padding:0}}@layer components{[data-skiplink]{position:absolute;&:not(:focus,:focus-within){clip:rect(1px,1px,1px,1px);pointer-events:none;overflow:hidden;height:1px;width:1px;border:0;padding:0;position:absolute}}}@layer components{main{:is(a[href^="mailto:"],a[href^="tel:"]){&:before{content:"";display:inline-block;width:1rem;height:1rem;margin-inline-end:.5ch;background-color:currentColor;vertical-align:middle}}:is(a[href^="mailto:"]):before{clip-path:polygon(0% 10%,0% 90%,0% 15%,50% 44%,100% 15%,100% 25%,50% 55%,0% 25%,0% 90%,100% 90%,100% 10%)}:is(a[href^="tel:"]):before{clip-path:polygon(38.25% 3%,48.49% 7.69%,53.16% 22.73%,50.41% 30.82%,41.86% 35.15%,37.32% 44.33%,40.78% 57.66%,45.03% 66.21%,53.75% 70.96%,62.81% 66.9%,68.65% 69.16%,79.87% 84.23%,79.84% 92.28%,70.14% 96.77%,59.46% 96.77%,46.27% 93.26%,33.24% 81.33%,27.26% 64.7%,19.65% 39.61%,20.89% 17.71%,24.95% 10.48%)}}}@layer components{:is(h1,h2,h3,h4,h5,h6){>:first-child:is([href^="#"]){text-decoration:none;color:currentColor;color:var(--col-fg2)}:is(&:hover,&:focus-within)>:first-child:is([href^="#"]){color:var(--col-accent);&:hover{color:var(--col-accent2)}}}}@layer components{[data-nav]{position:relative;padding-right:1rem;text-wrap:wrap;z-index:1;>ul{position:sticky;top:1rem;list-style:none;padding:0;>li{display:inline-block;font-weight:600;&:not(:last-of-type){margin-right:1rem}}}}}@layer components{[data-card]{position:relative;display:inline-block;background-color:var(--col-bg2);color:var(--col-fg);border-radius:var(--br-tl, var(--border-radius)) var(--br-tr, var(--border-radius)) var(--br-br, var(--border-radius)) var(--br-bl, var(--border-radius));padding:1rem 1ch;overflow:hidden;--t-translate: .25s;translate:0 0;>[data-card-link]{position:absolute;inset:0;z-index:2;border-radius:var(--br-tl, var(--border-radius)) var(--br-tr, var(--border-radius)) var(--br-br, var(--border-radius)) var(--br-bl, var(--border-radius));&:focus{outline:.125rem solid dodgerblue;outline-offset:-.125rem}}&:has([data-card-link]):is(:hover,:focus-within){translate:0 -.3rem}>header{background-color:var(--col-bg3);margin:-1rem -1ch 1rem;padding:1rem 1ch;font-size:1.2rem;font-weight:600}>footer{background-color:var(--col-bg3);margin:1rem -1ch -1rem;padding:1rem 1ch}>[data-card-background]{position:relative;margin:-1rem -1ch;max-width:calc(100% + 2ch);& *{max-width:100%;height:auto}&:has(figcaption){min-height:3.5rem}>figcaption{position:absolute;bottom:0;width:100%;padding:1rem 0;text-align:center;background:color-mix(in lch,var(--col-bg2),transparent 20%);font-weight:500;@media (prefers-reduced-transparency){background:var(--col-bg2)}}}}}@layer components{input:is([type=checkbox],[type=radio])[data-toggle]{appearance:none;position:relative;display:inline-grid;align-items:center;padding:0 .75em;background:var(--col-bg);height:1.65em;width:2.75em;border-radius:2em;vertical-align:sub;&:not([disabled],[aria-disabled]){cursor:pointer}&:before{content:"";width:1em;height:1em;background:var(--col-fg);border-radius:1.2em;top:.2em;left:.2em;transition:.1s ease-out transform,.1s ease-out background;transform:translate(-.5em)}&:checked:before{transform:translate(.5em);background:var(--col-accent)}&:focus-visible{outline:.125rem solid dodgerblue;outline-offset:.125rem}&:is([disabled],[aria-disabled]){filter:contrast(.5)}}}@layer components{@keyframes spin{0%{rotate:0}to{rotate:360deg}}[data-loading],button[aria-busy=true]{&:before{content:"";display:inline-block;vertical-align:text-bottom;margin-right:.5ch;animation:spin 1s linear infinite;width:1em;aspect-ratio:1;border-radius:50%;border:.2rem solid color-mix(in srgb,currentColor,transparent 66%);border-top-color:currentColor}&:is(button):before{margin-right:1ch}}}@layer components{[data-actionlink]{--actionlink-size: 3rem;--col-button: var(--col-accent);position:fixed;bottom:2rem;right:2rem;min-height:var(--actionlink-size);min-width:var(--actionlink-size);border-radius:var(--actionlink-size);background-color:var(--col-button);color:var(--col-accent-contrast);font-weight:600;display:grid;place-items:center;padding:1ch;text-decoration:none;z-index:1;&:hover{background-color:color-mix(in oklab,var(--col-button),white 10%)}}}@layer components{[data-carousel]{display:flex;gap:1rem;overflow-x:auto;scroll-snap-type:x mandatory;>*{flex:0 0 auto;scroll-snap-align:center}}[data-carousel=left]>*{scroll-snap-align:left}[data-carousel=right]>*{scroll-snap-align:right}}@layer components{[data-callout]{--col-callout: var(--col-fg2);--col-callout-contrast: var(--col-bg);border:1px solid var(--col-callout);background-color:color-mix(in oklab,var(--col-callout),var(--col-bg) 80%);padding:1rem;border-radius:var(--border-radius);overflow:hidden;text-wrap:wrap;>header{margin:-1rem -1rem 0;padding:1rem;background:var(--col-callout);color:var(--col-callout-contrast);font-family:var(--font-accent);>*{margin:0}}>:last-child{margin-bottom:0}}[data-callout=accent]{--col-callout: var(--col-accent);--col-callout-contrast: var(--col-accent-contrast)}[data-callout=accent2]{--col-callout: var(--col-accent2);--col-callout-contrast: var(--col-accent-contrast)}}@layer components{[data-shadow]{box-shadow:0 calc(var(--shadow-mod, var(--shadow-level)) * var(--shadow-mod, var(--shadow-level)) * 1px) calc(var(--shadow-level) * var(--shadow-level) * 2px) calc(var(--shadow-mod, var(--shadow-level)) * 1px - 1px) #00000024,0 3px calc((var(--shadow-mod, var(--shadow-level)) - 1) * 5px) calc((var(--shadow-mod, var(--shadow-level)) - 2) * 2px) #0000001f,0 calc((var(--shadow-mod, var(--shadow-level)) - 1) * 1.5px) calc(var(--shadow-mod, var(--shadow-level)) * 2px) calc((var(--shadow-mod, var(--shadow-level)) - 1) * 1.5px) #0003}[data-shadow$=-hover]{--t-box-shadow: .2s;&:hover{--shadow-mod: calc(var(--shadow-level) + 1)}}[data-shadow^="1"]{--shadow-level: 1}[data-shadow^="2"]{--shadow-level: 2}[data-shadow^="3"]{--shadow-level: 3}[data-shadow^="4"]{--shadow-level: 4}[data-shadow^="5"]{--shadow-level: 5}}@layer components{@keyframes fade-in{0%{opacity:0;translate:0 1rem}to{opacity:1;translate:0 0}}[data-fade-in]{view-timeline-name:--fade-in;view-timeline-axis:block;@media (prefers-reduced-motion: no-preference){animation:ease-in-out fade-in both;animation-timeline:--fade-in;animation-range:entry -10% cover 20%}}@keyframes sparkle{0%{opacity:0;translate:-.7ch -10%}10%{opacity:1;translate:-.7ch -10%}20%{opacity:0;translate:-.7ch -10%}25%{opacity:0;translate:60% -30%}35%{opacity:1;translate:60% -30%}45%{opacity:0;translate:60% -30%}55%{opacity:0;translate:30% 0}65%{opacity:1;translate:30% 0}75%{opacity:0;translate:30% 0}80%{opacity:0;translate:calc(100% - 1.3ch) -20%}90%{opacity:1;translate:calc(100% - 1.3ch) -20%}to{opacity:0;translate:calc(100% - 1.3ch) -20%}}[data-sparkle]{--sparkle-color: oklch(100% 0 259.28 / 100%);position:relative;text-shadow:0 0 10px var(--sparkle-color);letter-spacing:calc(var(--letter-spacing) + .03em);&:before,&:after{content:"\2728";position:absolute;inset:0;text-shadow:0 0 10px var(--sparkle-color);animation:sparkle 3s ease-in-out infinite;@media (prefers-reduced-motion){animation:none}}&:after{animation-delay:1s}@media (prefers-color-scheme: dark){--sparkle-color: oklch(100% 0 259.28 / 50%)}@media (prefers-reduced-motion){&:before,&:after{animation:none;position:relative}}}}
1
+ @layer base,layout,components;@layer base{@layer ssstyles_base{@property --body-width{syntax: "<length>"; inherits: true;}@property --col-bg{syntax: "<color>"; inherits: true;}@property --col-bg2{syntax: "<color>"; inherits: true;}@property --col-bg3{syntax: "<color>"; inherits: true;}@property --col-fg{syntax: "<color>"; inherits: true;}@property --col-fg2{syntax: "<color>"; inherits: true;}@property --col-accent{syntax: "<color>"; inherits: true;}@property --col-accent2{syntax: "<color>"; inherits: true;}@property --col-accent-contrast{syntax: "<color>"; inherits: true;}@property --font{syntax: "<string>"; inherits: true;}@property --font-mono{syntax: "<string>"; inherits: true;}@property --font-accent{syntax: "<string>"; inherits: true;}@property --font-size-min{syntax: "<length>"; inherits: true;}@property --font-size-max{syntax: "<length>"; inherits: true;}@property --line-height{syntax: "<integer> | <length> | normal"; inherits: true;}@property --letter-spacing{syntax: "<length>"; inherits: true;}@property --border-radius{syntax: "<length>"; inherits: true;}}}@layer base{@layer ssstyles_base{:root{--body-width: 45rem;--col-bg: #eee;--col-bg2: #e8e8e8;--col-bg3: #dfdfdf;--col-fg: #333;--col-fg2: #7c8386;--col-accent: #b2033a;--col-accent2: #1c618f;--col-accent-contrast: #eee;--font: Inter, Roboto, "Helvetica Neue", "Arial Nova", "Nimbus Sans", Arial, sans-serif;--font-mono: Consolas, monaco, "Ubuntu Mono", "Liberation Mono", "Courier New", Courier, monospace;--font-accent: var(--font);--font-size-min: 1rem;--font-size-max: 1.2rem;--line-height: 1.6;--letter-spacing: .01875em;--border-radius: 10px}@media (prefers-color-scheme: dark){:root{--col-bg: #15181a;--col-bg2: #161e21;--col-bg3: #1a2225;--col-fg: #eee;--col-fg2: #7c8386;--col-accent: #ff297a;--col-accent2: #72c4ff;--col-accent-contrast: #111}}}}@layer base{@layer ssstyles_base{@media (prefers-contrast: more){:root{--col-bg: #fff;--col-bg2: #fff;--col-bg3: #fff;--col-fg: #000;--col-fg2: #000;--col-accent: #800;--col-accent2: #00f;--col-accent-contrast: #fff}}@media (prefers-contrast: more) and (prefers-color-scheme: dark){:root{--col-bg: #000;--col-bg2: #000;--col-bg3: #000;--col-fg: #fff;--col-fg2: #fff;--col-accent: #ff0;--col-accent2: #0ff;--col-accent-contrast: #000}}}}@layer base{@layer ssstyles_base{:root{color-scheme:light dark;background-color:var(--col-bg);color:var(--col-fg)}*{accent-color:var(--col-accent)}a:not([data-button]){color:var(--col-accent);&:hover{color:var(--col-accent2)}}}}@layer base{@layer ssstyles_base{*{box-sizing:border-box}body{max-width:var(--body-width);margin:auto;padding:0 1rem;word-wrap:break-word;>:is(header,footer){position:relative;margin:0 calc((50vw - 50%)*-1 + 1rem);padding:2rem calc(50vw - 50% - 1rem);background:var(--col-bg3);&:before{content:"";position:absolute;inset:0;box-shadow:-2rem 0 0 0 var(--col-bg3),2rem 0 0 0 var(--col-bg3);z-index:-1}}&:not(:has(header)){padding-top:1rem}&:not(:has(footer)){padding-bottom:1rem}>header{margin-bottom:1rem}>footer{margin-top:5rem}}figure,video,canvas,iframe{display:block;max-width:100%;margin-inline-start:0;margin-inline-end:0}img,svg{max-width:100%;height:auto;vertical-align:text-bottom}}}@layer base{@layer ssstyles_base{*{word-break:break-word;hyphens:auto}:root{font-family:var(--font);font-size:round(min(max(var(--font-size-min),1.5vw),var(--font-size-max)),1px);line-height:var(--line-height);letter-spacing:var(--letter-spacing);text-wrap:balance;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}h1{font-size:3rem;font-family:var(--font-accent, var(--font))}h2,h3,h4,h5,h6{margin-top:3.5rem;font-family:var(--font-accent, var(--font))}input,button,textarea,select{font:inherit}}}@layer base{@layer ssstyles_base{fieldset{background-color:var(--col-bg2);border-radius:var(--br-tl, var(--border-radius)) var(--br-tr, var(--border-radius)) var(--br-br, var(--border-radius)) var(--br-bl, var(--border-radius));border-color:var(--col-bg3);border-style:solid;:is(input:not(:is([type=button],[type=submit],[type=reset])),textarea,select){background-color:color-mix(in lch,var(--col-bg2) 95%,var(--col-fg));border-color:var(--col-fg2)}}input:not(:is([type=button],[type=submit],[type=reset])),textarea,select{padding:.1rem 1ch;background-color:var(--col-bg2);border:.125rem solid var(--col-fg2);--br-tl: var(--border-radius);--br-tr: var(--border-radius);--br-bl: var(--border-radius);--br-br: var(--border-radius);border-radius:var(--br-tl) var(--br-tr) var(--br-br) var(--br-bl)}textarea{max-width:100%}select{-webkit-appearance:none;background:url(data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20height%3D%2740%27%20width%3D%27100%27%20fill%3D%22%23888%22%3E%3Cpolygon%20points%3D%220%2C0%2050%2C40%20100%2C0%22%2F%3E%3C%2Fsvg%3E) calc(100% - .8rem) 50%/.8rem no-repeat;padding-right:2rem}}}@layer base{@layer ssstyles_base{button,[data-button],input[type=submit],input[type=button],input[type=reset]{--col-button: var(--col-accent);--col-button2: var(--col-button);--pos-gradient: -.25rem;padding:.25rem 1ch;border:none;border-radius:var(--br-tl, var(--border-radius)) var(--br-tr, var(--border-radius)) var(--br-br, var(--border-radius)) var(--br-bl, var(--border-radius));color:var(--col-accent-contrast);font-weight:500;text-decoration:none;cursor:pointer;background:linear-gradient(to bottom,var(--col-button2) calc(100% + var(--pos-gradient)),color-mix(in oklab,var(--col-button2),black 20%) calc(100% + var(--pos-gradient)));&:hover:not(:is([disabled],[aria-disabled])){--col-button2: color-mix(in oklab, var(--col-button), white 10%)}&:active:not(:is([disabled],[aria-disabled])){--pos-gradient: -.35rem}&[data-button=accent2]{--col-button: var(--col-accent2)}&[data-button=bg]{--col-button: var(--col-bg);color:var(--col-fg)}&[data-button=fg]{--col-button: var(--col-fg);color:var(--col-bg)}}}}@layer base{@layer ssstyles_base{table{border-collapse:collapse;table-layout:fixed;min-width:100%}figure:has(table){overflow-x:auto}thead{border-bottom:.125rem solid var(--col-bg3)}tbody tr:nth-child(2n){background-color:var(--col-bg2)}td,th{padding:.5rem 1ch;text-align:left;vertical-align:top;white-space:nowrap}tfoot{border-top:.125rem solid var(--col-bg3)}dl{& dd{margin-inline-start:.5ch;&:before{content:"\251c";margin-inline-end:.5ch;font-family:var(--font-mono);font-size:2em;position:relative;top:.4rem;line-height:0;color:var(--col-fg2)}&:last-of-type:before,&:has(+dt):before{content:"\2514"}}}}}@layer base{@layer ssstyles_base{details{background-color:var(--col-bg2);border-color:var(--col-bg3);border-style:solid;border-radius:var(--br-tl, var(--border-radius)) var(--br-tr, var(--border-radius)) var(--br-br, var(--border-radius)) var(--br-bl, var(--border-radius));padding:.5rem 1ch;>summary{position:relative;font-weight:500;cursor:pointer;padding-left:1rem;list-style-type:none;&::marker,&::-webkit-details-marker{display:none}&:before{content:"";position:absolute;left:-1ch;width:0;height:0;border:.5rem solid transparent;border-left:.5rem solid var(--col-accent);transform:translate(.625rem,.25lh) rotate(var(--dstr, 0deg));transform-origin:25% center;transition:transform .1s ease-out}&:hover:before{border-left-color:var(--col-accent2)}}&[open]>summary{margin-bottom:1rem;&:before{--dstr: 90deg}}}}}@layer base{@layer ssstyles_base{blockquote{margin:1rem 0;padding:1rem 2ch;border-radius:var(--br-tl, var(--border-radius)) var(--br-tr, var(--border-radius)) var(--br-br, var(--border-radius)) var(--br-bl, var(--border-radius));background:var(--col-bg2);font-size:1.2rem;font-style:italic;border:2px solid var(--col-bg3);>footer{font-size:1rem;margin:1rem 0 0 2ch;font-style:normal;&:before{content:"\2014 "}cite{font-style:italic}}}figure>blockquote{margin:0}}}@layer base{@layer ssstyles_base{code,kbd,pre{background:var(--col-bg2);border:.125rem solid var(--col-bg3);border-radius:var(--br-tl, var(--border-radius)) var(--br-tr, var(--border-radius)) var(--br-br, var(--border-radius)) var(--br-bl, var(--border-radius));padding:.05rem .5ch;font-size:.8rem;font-family:var(--font-mono);font-weight:600;color:var(--col-accent2);max-width:100%;overflow:auto;text-wrap:nowrap}pre{padding:.5rem;margin:1rem 0}kbd{border-bottom:.25rem solid var(--col-bg3);border-radius:var(--border-radius) var(--border-radius) 5px 5px;font-weight:700}pre code,code pre{background:inherit;font-size:inherit;color:inherit;border:0;margin:0;padding:0}code pre{display:inline}}}@layer base{@layer ssstyles_base{@keyframes dialog-fade-in{0%{opacity:0;translate:0 1rem}to{opacity:1;translate:0 0}}body:has(dialog[open]){overflow:hidden}dialog{padding:1rem 2ch;border:.125rem solid var(--col-bg3);background:var(--col-bg);@media (prefers-reduced-motion: no-preference){animation:dialog-fade-in .1s ease-out}>header{background:var(--col-bg3);margin:-1rem -2ch 1rem;padding:1rem 2ch;font-weight:700}&::backdrop{background:rgba(0,0,0,.4);backdrop-filter:blur(4px);animation:fade-in .1s ease-out}}}}@layer base{@layer ssstyles_base{hr{border:.125rem solid var(--col-bg3);border-radius:var(--border-radius);margin:5rem 0}[disabled],[aria-disabled]{cursor:not-allowed;filter:saturate(0)}abbr{cursor:help}mark{background-color:var(--col-accent2);color:var(--col-accent-contrast)}}}@layer base;@layer base{*{transition:transform var(--t-transform, 0s) ease-out,translate var(--t-translate, 0s) ease-out,rotate var(--t-rotate, 0s) ease-out,scale var(--t-scale, 0s) ease-out,box-shadow var(--t-box-shadow, 0s) ease-out,color var(--t-color, 0s) ease-out,background var(--t-background, 0s) ease-out,border-color var(--t-border-color, 0s) ease-out,filter var(--t-filter, 0s) ease-out,opacity var(--t-opacity, 0s) ease-out}}@layer layout{:root{--basegrid: "header ." "nav side" "content side" "footer .";--basegrid-rows: max-content max-content auto max-content;--basegrid-cols: 100% 20ch}body{display:grid;min-height:100vh;grid-auto-columns:1fr;grid-template-columns:var(--basegrid-cols);grid-template-rows:var(--basegrid-rows);gap:0 1rem;grid-template-areas:var(--basegrid)}body>header{grid-area:header}body>nav{grid-area:nav}body>main{grid-area:content}body>footer{grid-area:footer}body>aside{grid-area:side}@media (min-width: 85rem){[data-nav]{grid-area:side;>ul>li{width:100%;margin-bottom:1rem}}}}@layer layout{[data-flexgrid]{display:flex;flex-wrap:wrap;gap:1rem;>*{flex:1 1 auto}}}@layer layout{[data-group]{display:inline-flex;flex-wrap:wrap;gap:1px;border-radius:var(--br-tl, var(--border-radius)) var(--br-tr, var(--border-radius)) var(--br-br, var(--border-radius)) var(--br-bl, var(--border-radius));&:not([data-group=vertical]){>*:first-child{--br-tr: 0;--br-br: 0}>*:not(:first-child):not(:last-child){--br-tl: 0;--br-tr: 0;--br-bl: 0;--br-br: 0}>*:last-child{--br-tl: 0;--br-bl: 0}}&[data-group=vertical]{flex-direction:column;>*:first-child{--br-bl: 0;--br-br: 0}>*:not(:first-child):not(:last-child){--br-tl: 0;--br-tr: 0;--br-bl: 0;--br-br: 0}>*:last-child{--br-tr: 0;--br-tl: 0}}}}@layer layout{[data-breakout]{--col-breakout: var(--col-bg);position:relative;background:var(--col-breakout);margin:0 calc((50vw - 50%)*-1 + 1rem);padding:1rem calc(50vw - 50% - 1rem);&:before{content:"";position:absolute;inset:0;box-shadow:-2rem 0 0 0 var(--col-breakout),2rem 0 0 0 var(--col-breakout);z-index:-1}}[data-breakout=bg]{--col-breakout: var(--col-bg)}[data-breakout=bg2]{--col-breakout: var(--col-bg2)}[data-breakout=bg3]{--col-breakout: var(--col-bg3)}[data-breakout=accent]{--col-breakout: var(--col-accent);color:var(--col-accent-contrast)}[data-breakout=accent2]{--col-breakout: var(--col-accent2);color:var(--col-accent-contrast)}[data-breakout=fg]{--col-breakout: var(--col-fg);color:var(--col-bg)}[data-breakout=fg2]{--col-breakout: var(--col-fg2);color:var(--col-bg)}}@layer layout{[data-autogrid]{--gap: 1rem;display:grid;grid-template-columns:repeat(auto-fit,minmax(var(--grid-item-width),1fr));justify-items:stretch;align-items:flex-start;gap:var(--gap)}[data-autogrid="1/4"]{--grid-item-width: max(calc(25% - var(--gap) * 3), 140px)}[data-autogrid="1/3"]{--grid-item-width: max(calc(33% - var(--gap) * 2), 200px)}[data-autogrid="1/2"]{--grid-item-width: max(calc(50% - var(--gap)), 240px)}}@layer components{[data-hint=nolist]{list-style:none;padding:0}}@layer components{[data-skiplink]{position:absolute;&:not(:focus,:focus-within){clip:rect(1px,1px,1px,1px);pointer-events:none;overflow:hidden;height:1px;width:1px;border:0;padding:0;position:absolute}}}@layer components{main{:is(a[href^="mailto:"],a[href^="tel:"]){&:before{content:"";display:inline-block;width:1rem;height:1rem;margin-inline-end:.5ch;background-color:currentColor;vertical-align:middle}}:is(a[href^="mailto:"]):before{clip-path:polygon(0% 10%,0% 90%,0% 15%,50% 44%,100% 15%,100% 25%,50% 55%,0% 25%,0% 90%,100% 90%,100% 10%)}:is(a[href^="tel:"]):before{clip-path:polygon(38.25% 3%,48.49% 7.69%,53.16% 22.73%,50.41% 30.82%,41.86% 35.15%,37.32% 44.33%,40.78% 57.66%,45.03% 66.21%,53.75% 70.96%,62.81% 66.9%,68.65% 69.16%,79.87% 84.23%,79.84% 92.28%,70.14% 96.77%,59.46% 96.77%,46.27% 93.26%,33.24% 81.33%,27.26% 64.7%,19.65% 39.61%,20.89% 17.71%,24.95% 10.48%)}}}@layer components{:is(h1,h2,h3,h4,h5,h6){>:first-child:is([href^="#"]){text-decoration:none;color:currentColor;color:var(--col-fg2)}:is(&:hover,&:focus-within)>:first-child:is([href^="#"]){color:var(--col-accent);&:hover{color:var(--col-accent2)}}}}@layer components{[data-nav]{position:relative;padding-right:1rem;text-wrap:wrap;z-index:1;>ul{position:sticky;top:1rem;list-style:none;padding:0;>li{display:inline-block;font-weight:600;&:not(:last-of-type){margin-right:1rem}}}}}@layer components{[data-card]{position:relative;display:inline-block;background-color:var(--col-bg2);color:var(--col-fg);border-radius:var(--br-tl, var(--border-radius)) var(--br-tr, var(--border-radius)) var(--br-br, var(--border-radius)) var(--br-bl, var(--border-radius));padding:1rem;--t-translate: .25s;translate:0 0;>*+*{margin-block-start:1rem;margin-block-end:0}>[data-card-link]{position:absolute;inset:0;z-index:2;border-radius:var(--br-tl, var(--border-radius)) var(--br-tr, var(--border-radius)) var(--br-br, var(--border-radius)) var(--br-bl, var(--border-radius));&:focus{outline:.125rem solid dodgerblue;outline-offset:-.125rem}}&:has([data-card-link]):is(:hover,:focus-within){translate:0 -.3rem}>header{background-color:var(--col-bg3);margin:-1rem -1rem 1rem;padding:1rem;border-radius:var(--br-tl, var(--border-radius)) var(--br-tr, var(--border-radius)) 0 0;font-size:1.2rem;font-weight:600}>footer{background-color:var(--col-bg3);margin:1rem -1rem -1rem;padding:1rem;border-radius:0 0 var(--br-br, var(--border-radius)) var(--br-bl, var(--border-radius))}>[data-card-background]{position:relative;margin:-1rem;max-width:calc(100% + 2rem);border-radius:var(--br-tl, var(--border-radius)) var(--br-tr, var(--border-radius)) var(--br-br, var(--border-radius)) var(--br-bl, var(--border-radius));overflow:hidden;& *{max-width:100%;height:auto}&:has(figcaption){min-height:3.5rem}>figcaption{position:absolute;bottom:0;width:100%;padding:1rem 0;text-align:center;background:color-mix(in lch,var(--col-bg2),transparent 20%);font-weight:500;@media (prefers-reduced-transparency){background:var(--col-bg2)}}}}}@layer components{input:is([type=checkbox],[type=radio])[data-toggle]{appearance:none;position:relative;display:inline-grid;align-items:center;padding:0 .75em;background:var(--col-bg);height:1.65em;width:2.75em;border-radius:2em;vertical-align:sub;&:not([disabled],[aria-disabled]){cursor:pointer}&:before{content:"";width:1em;height:1em;background:var(--col-fg);border-radius:1.2em;top:.2em;left:.2em;transition:.1s ease-out transform,.1s ease-out background;transform:translate(-.5em)}&:checked:before{transform:translate(.5em);background:var(--col-accent)}&:focus-visible{outline:.125rem solid dodgerblue;outline-offset:.125rem}&:is([disabled],[aria-disabled]){filter:contrast(.5)}}}@layer components{@keyframes spin{0%{rotate:0}to{rotate:360deg}}[data-loading],button[aria-busy=true]{&:before{content:"";display:inline-block;vertical-align:text-bottom;margin-right:.5ch;animation:spin 1s linear infinite;width:1em;aspect-ratio:1;border-radius:50%;border:.2rem solid color-mix(in srgb,currentColor,transparent 66%);border-top-color:currentColor}&:is(button):before{margin-right:1ch}}}@layer components{[data-actionlink]{--actionlink-size: 3rem;--col-button: var(--col-accent);position:fixed;bottom:2rem;right:2rem;min-height:var(--actionlink-size);min-width:var(--actionlink-size);border-radius:var(--actionlink-size);background-color:var(--col-button);color:var(--col-accent-contrast);font-weight:600;display:grid;place-items:center;padding:1ch;text-decoration:none;z-index:1;&:hover{background-color:color-mix(in oklab,var(--col-button),white 10%)}}}@layer components{[data-avatar]{aspect-ratio:1/1;border-radius:1000rem;object-fit:cover;background-color:var(--col-bg);width:1.5lh}[data-avatar]:not(img){display:inline-grid;place-items:center;width:1.5lh;padding:.3rem;background-color:var(--col-fg2);color:var(--col-bg);overflow:hidden;font-weight:700}a[href]>[data-avatar]:first-child:last-child{position:relative;border:2px solid var(--col-accent);translate:0 0;--t-translate: .2s;z-index:1;&:hover{translate:0 -.3rem;z-index:2;border-color:var(--col-accent2)}}[data-group]:not([data-group=vertical])>:is([data-avatar]:not(:first-child),a:has(>[data-avatar]):not(:first-child)){margin-inline-start:-.6em}[data-group=vertical]>:is([data-avatar]:not(:first-child),a:has(>[data-avatar]):not(:first-child)){margin-block-start:-.6em}}@layer components{[data-comment]{position:relative;margin:2rem 0;margin-left:calc(2rem * var(--level, 0));>[data-comment]{--level: 1}&[data-card]{display:block}&:before{content:"";position:absolute;top:-1rem;left:calc(-2rem * var(--level, 0));bottom:-1rem;width:calc(2rem * var(--level, 0));background:repeating-linear-gradient(to right,var(--col-fg2),var(--col-fg2) 2px,transparent 2px,transparent 2rem) .5rem}>header{font-weight:600;*{vertical-align:middle}}}}@layer components{[data-carousel]{display:flex;align-items:flex-start;gap:1rem;overflow-x:auto;scroll-snap-type:x mandatory;>*{flex:0 0 auto;scroll-snap-align:center}}[data-carousel=left]>*{scroll-snap-align:left}[data-carousel=right]>*{scroll-snap-align:right}}@layer components{[data-callout]{--col-callout: var(--col-fg2);--col-callout-contrast: var(--col-bg);border:1px solid var(--col-callout);background-color:color-mix(in oklab,var(--col-callout),var(--col-bg) 80%);padding:1rem;border-radius:var(--border-radius);overflow:hidden;text-wrap:wrap;>header{margin:-1rem -1rem 0;padding:1rem;background:var(--col-callout);color:var(--col-callout-contrast);font-family:var(--font-accent);>*{margin:0}}>:last-child{margin-bottom:0}}[data-callout=accent]{--col-callout: var(--col-accent);--col-callout-contrast: var(--col-accent-contrast)}[data-callout=accent2]{--col-callout: var(--col-accent2);--col-callout-contrast: var(--col-accent-contrast)}}@layer components{[data-shadow]{box-shadow:0 calc(var(--shadow-mod, var(--shadow-level)) * var(--shadow-mod, var(--shadow-level)) * 1px) calc(var(--shadow-level) * var(--shadow-level) * 2px) calc(var(--shadow-mod, var(--shadow-level)) * 1px - 1px) #00000024,0 3px calc((var(--shadow-mod, var(--shadow-level)) - 1) * 5px) calc((var(--shadow-mod, var(--shadow-level)) - 2) * 2px) #0000001f,0 calc((var(--shadow-mod, var(--shadow-level)) - 1) * 1.5px) calc(var(--shadow-mod, var(--shadow-level)) * 2px) calc((var(--shadow-mod, var(--shadow-level)) - 1) * 1.5px) #0003}[data-shadow$=-hover]{--t-box-shadow: .2s;&:hover{--shadow-mod: calc(var(--shadow-level) + 1)}}[data-shadow^="1"]{--shadow-level: 1}[data-shadow^="2"]{--shadow-level: 2}[data-shadow^="3"]{--shadow-level: 3}[data-shadow^="4"]{--shadow-level: 4}[data-shadow^="5"]{--shadow-level: 5}}@layer components{[data-spoiler]{background-color:currentColor;cursor:pointer;speak:never;&:focus-within{background-color:transparent;speak:auto;@media (prefers-reduced-motion: no-preference){transition:background-color 1s ease-out}}}}@layer components{@keyframes fade-in{0%{opacity:0;translate:0 1rem}to{opacity:1;translate:0 0}}[data-fade-in]{view-timeline-name:--fade-in;view-timeline-axis:block;@media (prefers-reduced-motion: no-preference){animation:ease-in-out fade-in both;animation-timeline:--fade-in;animation-range:entry -10% cover 20%}}@keyframes sparkle{0%{opacity:0;translate:-.7ch -10%}10%{opacity:1;translate:-.7ch -10%}20%{opacity:0;translate:-.7ch -10%}25%{opacity:0;translate:60% -30%}35%{opacity:1;translate:60% -30%}45%{opacity:0;translate:60% -30%}55%{opacity:0;translate:30% 0}65%{opacity:1;translate:30% 0}75%{opacity:0;translate:30% 0}80%{opacity:0;translate:calc(100% - 1.3ch) -20%}90%{opacity:1;translate:calc(100% - 1.3ch) -20%}to{opacity:0;translate:calc(100% - 1.3ch) -20%}}[data-sparkle]{--sparkle-color: oklch(100% 0 259.28 / 100%);position:relative;text-shadow:0 0 10px var(--sparkle-color);letter-spacing:calc(var(--letter-spacing) + .03em);&:before,&:after{content:"\2728";position:absolute;inset:0;text-shadow:0 0 10px var(--sparkle-color);animation:sparkle 3s ease-in-out infinite;@media (prefers-reduced-motion){animation:none}}&:after{animation-delay:1s}@media (prefers-color-scheme: dark){--sparkle-color: oklch(100% 0 259.28 / 50%)}@media (prefers-reduced-motion){&:before,&:after{animation:none;position:relative}}}}
package/dist/base.css CHANGED
@@ -1 +1 @@
1
- @layer ssstyles_base{:root{--body-width: 45rem;--col-bg: #eee;--col-bg2: #e8e8e8;--col-bg3: #dfdfdf;--col-fg: #333;--col-fg2: #7c8386;--col-accent: #b2033a;--col-accent2: #1c618f;--col-accent-contrast: #eee;--font: Inter, Roboto, "Helvetica Neue", "Arial Nova", "Nimbus Sans", Arial, sans-serif;--font-mono: Consolas, monaco, "Ubuntu Mono", "Liberation Mono", "Courier New", Courier, monospace;--font-accent: var(--font);--font-size-min: 1rem;--font-size-max: 1.2rem;--line-height: 1.6;--letter-spacing: .01875em;--border-radius: 10px}@media (prefers-color-scheme: dark){:root{--col-bg: #15181a;--col-bg2: #161e21;--col-bg3: #1a2225;--col-fg: #eee;--col-fg2: #7c8386;--col-accent: #ff297a;--col-accent2: #72c4ff;--col-accent-contrast: #111}}}@layer ssstyles_base{@media (prefers-contrast: more){:root{--col-bg: #fff;--col-bg2: #fff;--col-bg3: #fff;--col-fg: #000;--col-fg2: #000;--col-accent: #800;--col-accent2: #00f;--col-accent-contrast: #fff}}@media (prefers-contrast: more) and (prefers-color-scheme: dark){:root{--col-bg: #000;--col-bg2: #000;--col-bg3: #000;--col-fg: #fff;--col-fg2: #fff;--col-accent: #ff0;--col-accent2: #0ff;--col-accent-contrast: #000}}}@layer ssstyles_base{:root{color-scheme:light dark;background-color:var(--col-bg);color:var(--col-fg)}*{accent-color:var(--col-accent)}a:not([data-button]){color:var(--col-accent);&:hover{color:var(--col-accent2)}}}@layer ssstyles_base{*{box-sizing:border-box}body{max-width:var(--body-width);margin:auto;padding:0 1rem;word-wrap:break-word;>:is(header,footer){position:relative;margin:0 calc((50vw - 50%)*-1 + 1rem);padding:2rem calc(50vw - 50% - 1rem);background:var(--col-bg3);&:before{content:"";position:absolute;inset:0;box-shadow:-2rem 0 0 0 var(--col-bg3),2rem 0 0 0 var(--col-bg3);z-index:-1}}&:not(:has(header)){padding-top:1rem}&:not(:has(footer)){padding-bottom:1rem}>header{margin-bottom:1rem}>footer{margin-top:5rem}}figure,video,canvas,iframe{display:block;max-width:100%;margin-inline-start:0;margin-inline-end:0}img,svg{max-width:100%;height:auto;vertical-align:text-bottom}}@layer ssstyles_base{*{word-break:break-word;hyphens:auto}:root{font-family:var(--font);font-size:min(max(var(--font-size-min),1.5vw),var(--font-size-max));line-height:var(--line-height);letter-spacing:var(--letter-spacing);text-wrap:balance;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}h1{font-size:3rem;font-family:var(--font-accent, var(--font))}h2,h3,h4,h5,h6{margin-top:3.5rem;font-family:var(--font-accent, var(--font))}input,button,textarea,select{font:inherit}}@layer ssstyles_base{fieldset{background-color:var(--col-bg2);border-radius:var(--br-tl, var(--border-radius)) var(--br-tr, var(--border-radius)) var(--br-br, var(--border-radius)) var(--br-bl, var(--border-radius));border-color:var(--col-bg3);border-style:solid;:is(input:not(:is([type=button],[type=submit],[type=reset])),textarea,select){background-color:color-mix(in lch,var(--col-bg2) 95%,var(--col-fg));border-color:var(--col-fg2)}}input:not(:is([type=button],[type=submit],[type=reset])),textarea,select{padding:.1rem 1ch;background-color:var(--col-bg2);border:.125rem solid var(--col-fg2);--br-tl: var(--border-radius);--br-tr: var(--border-radius);--br-bl: var(--border-radius);--br-br: var(--border-radius);border-radius:var(--br-tl) var(--br-tr) var(--br-br) var(--br-bl)}textarea{max-width:100%}select{-webkit-appearance:none;background:url(data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20height%3D%2740%27%20width%3D%27100%27%20fill%3D%22%23888%22%3E%3Cpolygon%20points%3D%220%2C0%2050%2C40%20100%2C0%22%2F%3E%3C%2Fsvg%3E) calc(100% - .8rem) 50%/.8rem no-repeat;padding-right:2rem}}@layer ssstyles_base{button,[data-button],input[type=submit],input[type=button],input[type=reset]{--col-button: var(--col-accent);--col-button2: var(--col-button);--pos-gradient: -.25rem;padding:.25rem 1ch;border:none;border-radius:var(--br-tl, var(--border-radius)) var(--br-tr, var(--border-radius)) var(--br-br, var(--border-radius)) var(--br-bl, var(--border-radius));color:var(--col-accent-contrast);font-weight:500;text-decoration:none;cursor:pointer;background:linear-gradient(to bottom,var(--col-button2) calc(100% + var(--pos-gradient)),color-mix(in oklab,var(--col-button2),black 20%) calc(100% + var(--pos-gradient)));&:hover:not(:is([disabled],[aria-disabled])){--col-button2: color-mix(in oklab, var(--col-button), white 10%)}&:active:not(:is([disabled],[aria-disabled])){--pos-gradient: -.35rem}&[data-button=accent2]{--col-button: var(--col-accent2)}}}@layer ssstyles_base{table{border-collapse:collapse;table-layout:fixed;min-width:100%}figure:has(table){overflow-x:auto}thead{border-bottom:.125rem solid var(--col-bg3)}tbody tr:nth-child(2n){background-color:var(--col-bg2)}td,th{padding:.5rem 1ch;text-align:left;vertical-align:top;white-space:nowrap}tfoot{border-top:.125rem solid var(--col-bg3)}dl{& dd{margin-inline-start:.5ch;&:before{content:"\251c";margin-inline-end:.5ch;font-family:var(--font-mono);font-size:2em;position:relative;top:.4rem;line-height:0;color:var(--col-fg2)}&:last-of-type:before,&:has(+dt):before{content:"\2514"}}}}@layer ssstyles_base{details{background-color:var(--col-bg2);border-color:var(--col-bg3);border-style:solid;border-radius:var(--br-tl, var(--border-radius)) var(--br-tr, var(--border-radius)) var(--br-br, var(--border-radius)) var(--br-bl, var(--border-radius));padding:.5rem 1ch;>summary{position:relative;font-weight:500;cursor:pointer;padding-left:1rem;list-style-type:none;&::marker,&::-webkit-details-marker{display:none}&:before{content:"";position:absolute;left:-1ch;width:0;height:0;border:.5rem solid transparent;border-left:.5rem solid var(--col-accent);transform:translate(.625rem,.25lh) rotate(var(--dstr, 0deg));transform-origin:25% center;transition:transform .1s ease-out}&:hover:before{border-left-color:var(--col-accent2)}}&[open]>summary{margin-bottom:1rem;&:before{--dstr: 90deg}}}}@layer ssstyles_base{blockquote{margin:1rem 0;padding:1rem 2ch;border-radius:var(--br-tl, var(--border-radius)) var(--br-tr, var(--border-radius)) var(--br-br, var(--border-radius)) var(--br-bl, var(--border-radius));background:var(--col-bg2);font-size:1.2rem;font-style:italic;border:2px solid var(--col-bg3);>footer{font-size:1rem;margin:1rem 0 0 2ch;font-style:normal;&:before{content:"\2014 "}cite{font-style:italic}}}figure>blockquote{margin:0}}@layer ssstyles_base{code,kbd,pre{background:var(--col-bg2);border:.125rem solid var(--col-bg3);border-radius:var(--br-tl, var(--border-radius)) var(--br-tr, var(--border-radius)) var(--br-br, var(--border-radius)) var(--br-bl, var(--border-radius));padding:.05rem .5ch;font-size:.8rem;font-family:var(--font-mono);font-weight:600;color:var(--col-accent2);max-width:100%;overflow:auto;text-wrap:nowrap}pre{padding:.5rem;margin:1rem 0}kbd{border-bottom:.25rem solid var(--col-bg3);border-radius:var(--border-radius) var(--border-radius) 5px 5px;font-weight:700}pre code,code pre{background:inherit;font-size:inherit;color:inherit;border:0;margin:0;padding:0}code pre{display:inline}}@layer ssstyles_base{@keyframes dialog-fade-in{0%{opacity:0;translate:0 1rem}to{opacity:1;translate:0 0}}body:has(dialog[open]){overflow:hidden}dialog{padding:1rem 2ch;border:.125rem solid var(--col-bg3);background:var(--col-bg);@media (prefers-reduced-motion: no-preference){animation:dialog-fade-in .1s ease-out}>header{background:var(--col-bg3);margin:-1rem -2ch 1rem;padding:1rem 2ch;font-weight:700}&::backdrop{background:rgba(0,0,0,.4);backdrop-filter:blur(4px);animation:fade-in .1s ease-out}}}@layer ssstyles_base{hr{border:.125rem solid var(--col-bg3);border-radius:var(--border-radius);margin:5rem 0}[disabled],[aria-disabled]{cursor:not-allowed;filter:saturate(0)}abbr{cursor:help}mark{background-color:var(--col-accent2);color:var(--col-accent-contrast)}}
1
+ @layer ssstyles_base{@property --body-width{syntax: "<length>"; inherits: true;}@property --col-bg{syntax: "<color>"; inherits: true;}@property --col-bg2{syntax: "<color>"; inherits: true;}@property --col-bg3{syntax: "<color>"; inherits: true;}@property --col-fg{syntax: "<color>"; inherits: true;}@property --col-fg2{syntax: "<color>"; inherits: true;}@property --col-accent{syntax: "<color>"; inherits: true;}@property --col-accent2{syntax: "<color>"; inherits: true;}@property --col-accent-contrast{syntax: "<color>"; inherits: true;}@property --font{syntax: "<string>"; inherits: true;}@property --font-mono{syntax: "<string>"; inherits: true;}@property --font-accent{syntax: "<string>"; inherits: true;}@property --font-size-min{syntax: "<length>"; inherits: true;}@property --font-size-max{syntax: "<length>"; inherits: true;}@property --line-height{syntax: "<integer> | <length> | normal"; inherits: true;}@property --letter-spacing{syntax: "<length>"; inherits: true;}@property --border-radius{syntax: "<length>"; inherits: true;}}@layer ssstyles_base{:root{--body-width: 45rem;--col-bg: #eee;--col-bg2: #e8e8e8;--col-bg3: #dfdfdf;--col-fg: #333;--col-fg2: #7c8386;--col-accent: #b2033a;--col-accent2: #1c618f;--col-accent-contrast: #eee;--font: Inter, Roboto, "Helvetica Neue", "Arial Nova", "Nimbus Sans", Arial, sans-serif;--font-mono: Consolas, monaco, "Ubuntu Mono", "Liberation Mono", "Courier New", Courier, monospace;--font-accent: var(--font);--font-size-min: 1rem;--font-size-max: 1.2rem;--line-height: 1.6;--letter-spacing: .01875em;--border-radius: 10px}@media (prefers-color-scheme: dark){:root{--col-bg: #15181a;--col-bg2: #161e21;--col-bg3: #1a2225;--col-fg: #eee;--col-fg2: #7c8386;--col-accent: #ff297a;--col-accent2: #72c4ff;--col-accent-contrast: #111}}}@layer ssstyles_base{@media (prefers-contrast: more){:root{--col-bg: #fff;--col-bg2: #fff;--col-bg3: #fff;--col-fg: #000;--col-fg2: #000;--col-accent: #800;--col-accent2: #00f;--col-accent-contrast: #fff}}@media (prefers-contrast: more) and (prefers-color-scheme: dark){:root{--col-bg: #000;--col-bg2: #000;--col-bg3: #000;--col-fg: #fff;--col-fg2: #fff;--col-accent: #ff0;--col-accent2: #0ff;--col-accent-contrast: #000}}}@layer ssstyles_base{:root{color-scheme:light dark;background-color:var(--col-bg);color:var(--col-fg)}*{accent-color:var(--col-accent)}a:not([data-button]){color:var(--col-accent);&:hover{color:var(--col-accent2)}}}@layer ssstyles_base{*{box-sizing:border-box}body{max-width:var(--body-width);margin:auto;padding:0 1rem;word-wrap:break-word;>:is(header,footer){position:relative;margin:0 calc((50vw - 50%)*-1 + 1rem);padding:2rem calc(50vw - 50% - 1rem);background:var(--col-bg3);&:before{content:"";position:absolute;inset:0;box-shadow:-2rem 0 0 0 var(--col-bg3),2rem 0 0 0 var(--col-bg3);z-index:-1}}&:not(:has(header)){padding-top:1rem}&:not(:has(footer)){padding-bottom:1rem}>header{margin-bottom:1rem}>footer{margin-top:5rem}}figure,video,canvas,iframe{display:block;max-width:100%;margin-inline-start:0;margin-inline-end:0}img,svg{max-width:100%;height:auto;vertical-align:text-bottom}}@layer ssstyles_base{*{word-break:break-word;hyphens:auto}:root{font-family:var(--font);font-size:round(min(max(var(--font-size-min),1.5vw),var(--font-size-max)),1px);line-height:var(--line-height);letter-spacing:var(--letter-spacing);text-wrap:balance;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}h1{font-size:3rem;font-family:var(--font-accent, var(--font))}h2,h3,h4,h5,h6{margin-top:3.5rem;font-family:var(--font-accent, var(--font))}input,button,textarea,select{font:inherit}}@layer ssstyles_base{fieldset{background-color:var(--col-bg2);border-radius:var(--br-tl, var(--border-radius)) var(--br-tr, var(--border-radius)) var(--br-br, var(--border-radius)) var(--br-bl, var(--border-radius));border-color:var(--col-bg3);border-style:solid;:is(input:not(:is([type=button],[type=submit],[type=reset])),textarea,select){background-color:color-mix(in lch,var(--col-bg2) 95%,var(--col-fg));border-color:var(--col-fg2)}}input:not(:is([type=button],[type=submit],[type=reset])),textarea,select{padding:.1rem 1ch;background-color:var(--col-bg2);border:.125rem solid var(--col-fg2);--br-tl: var(--border-radius);--br-tr: var(--border-radius);--br-bl: var(--border-radius);--br-br: var(--border-radius);border-radius:var(--br-tl) var(--br-tr) var(--br-br) var(--br-bl)}textarea{max-width:100%}select{-webkit-appearance:none;background:url(data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20height%3D%2740%27%20width%3D%27100%27%20fill%3D%22%23888%22%3E%3Cpolygon%20points%3D%220%2C0%2050%2C40%20100%2C0%22%2F%3E%3C%2Fsvg%3E) calc(100% - .8rem) 50%/.8rem no-repeat;padding-right:2rem}}@layer ssstyles_base{button,[data-button],input[type=submit],input[type=button],input[type=reset]{--col-button: var(--col-accent);--col-button2: var(--col-button);--pos-gradient: -.25rem;padding:.25rem 1ch;border:none;border-radius:var(--br-tl, var(--border-radius)) var(--br-tr, var(--border-radius)) var(--br-br, var(--border-radius)) var(--br-bl, var(--border-radius));color:var(--col-accent-contrast);font-weight:500;text-decoration:none;cursor:pointer;background:linear-gradient(to bottom,var(--col-button2) calc(100% + var(--pos-gradient)),color-mix(in oklab,var(--col-button2),black 20%) calc(100% + var(--pos-gradient)));&:hover:not(:is([disabled],[aria-disabled])){--col-button2: color-mix(in oklab, var(--col-button), white 10%)}&:active:not(:is([disabled],[aria-disabled])){--pos-gradient: -.35rem}&[data-button=accent2]{--col-button: var(--col-accent2)}&[data-button=bg]{--col-button: var(--col-bg);color:var(--col-fg)}&[data-button=fg]{--col-button: var(--col-fg);color:var(--col-bg)}}}@layer ssstyles_base{table{border-collapse:collapse;table-layout:fixed;min-width:100%}figure:has(table){overflow-x:auto}thead{border-bottom:.125rem solid var(--col-bg3)}tbody tr:nth-child(2n){background-color:var(--col-bg2)}td,th{padding:.5rem 1ch;text-align:left;vertical-align:top;white-space:nowrap}tfoot{border-top:.125rem solid var(--col-bg3)}dl{& dd{margin-inline-start:.5ch;&:before{content:"\251c";margin-inline-end:.5ch;font-family:var(--font-mono);font-size:2em;position:relative;top:.4rem;line-height:0;color:var(--col-fg2)}&:last-of-type:before,&:has(+dt):before{content:"\2514"}}}}@layer ssstyles_base{details{background-color:var(--col-bg2);border-color:var(--col-bg3);border-style:solid;border-radius:var(--br-tl, var(--border-radius)) var(--br-tr, var(--border-radius)) var(--br-br, var(--border-radius)) var(--br-bl, var(--border-radius));padding:.5rem 1ch;>summary{position:relative;font-weight:500;cursor:pointer;padding-left:1rem;list-style-type:none;&::marker,&::-webkit-details-marker{display:none}&:before{content:"";position:absolute;left:-1ch;width:0;height:0;border:.5rem solid transparent;border-left:.5rem solid var(--col-accent);transform:translate(.625rem,.25lh) rotate(var(--dstr, 0deg));transform-origin:25% center;transition:transform .1s ease-out}&:hover:before{border-left-color:var(--col-accent2)}}&[open]>summary{margin-bottom:1rem;&:before{--dstr: 90deg}}}}@layer ssstyles_base{blockquote{margin:1rem 0;padding:1rem 2ch;border-radius:var(--br-tl, var(--border-radius)) var(--br-tr, var(--border-radius)) var(--br-br, var(--border-radius)) var(--br-bl, var(--border-radius));background:var(--col-bg2);font-size:1.2rem;font-style:italic;border:2px solid var(--col-bg3);>footer{font-size:1rem;margin:1rem 0 0 2ch;font-style:normal;&:before{content:"\2014 "}cite{font-style:italic}}}figure>blockquote{margin:0}}@layer ssstyles_base{code,kbd,pre{background:var(--col-bg2);border:.125rem solid var(--col-bg3);border-radius:var(--br-tl, var(--border-radius)) var(--br-tr, var(--border-radius)) var(--br-br, var(--border-radius)) var(--br-bl, var(--border-radius));padding:.05rem .5ch;font-size:.8rem;font-family:var(--font-mono);font-weight:600;color:var(--col-accent2);max-width:100%;overflow:auto;text-wrap:nowrap}pre{padding:.5rem;margin:1rem 0}kbd{border-bottom:.25rem solid var(--col-bg3);border-radius:var(--border-radius) var(--border-radius) 5px 5px;font-weight:700}pre code,code pre{background:inherit;font-size:inherit;color:inherit;border:0;margin:0;padding:0}code pre{display:inline}}@layer ssstyles_base{@keyframes dialog-fade-in{0%{opacity:0;translate:0 1rem}to{opacity:1;translate:0 0}}body:has(dialog[open]){overflow:hidden}dialog{padding:1rem 2ch;border:.125rem solid var(--col-bg3);background:var(--col-bg);@media (prefers-reduced-motion: no-preference){animation:dialog-fade-in .1s ease-out}>header{background:var(--col-bg3);margin:-1rem -2ch 1rem;padding:1rem 2ch;font-weight:700}&::backdrop{background:rgba(0,0,0,.4);backdrop-filter:blur(4px);animation:fade-in .1s ease-out}}}@layer ssstyles_base{hr{border:.125rem solid var(--col-bg3);border-radius:var(--border-radius);margin:5rem 0}[disabled],[aria-disabled]{cursor:not-allowed;filter:saturate(0)}abbr{cursor:help}mark{background-color:var(--col-accent2);color:var(--col-accent-contrast)}}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "ssstyles",
3
- "version": "1.0.2",
3
+ "version": "1.0.3",
4
4
  "description": "Ssstyles is a very simple CSS style system",
5
5
  "main": "dist/base.css",
6
6
  "scripts": {
@@ -35,7 +35,6 @@
35
35
  "esbuild": "^0.19.8",
36
36
  "html-validate": "^8.8.0",
37
37
  "markdown-it": "^14.0.0",
38
- "markdown-it-abbr": "^2.0.0",
39
38
  "markdown-it-anchor": "^8.6.7",
40
39
  "npm-run-all": "^4.1.5",
41
40
  "prism-themes": "^1.9.0"