|
| 1 | +:root { |
| 2 | + --color-text: inherit; |
| 3 | + --color-accent: rgba(0, 128, 0, 0.5); |
| 4 | + --color-accent-bg: rgba(0, 128, 0, 0.15); |
| 5 | + --color-error: #f00; |
| 6 | + --color-error-bg: #fff0f0; |
| 7 | + --font-family-mono: monospace; |
| 8 | + --font-size-base: 1rem; |
| 9 | + --line-height-base: 1.5; |
| 10 | + --spacing-xs: 0.25rem; |
| 11 | + --spacing-sm: 0.5rem; |
| 12 | + --button-padding-y: 0.4em; |
| 13 | + --button-padding-x: 0.75em; |
| 14 | + --border-radius-sm: 0.25em; |
| 15 | + --transition-border: border-color 0.2s linear; |
| 16 | + --transition-shadow: box-shadow 0.2s ease-in-out; |
| 17 | +} |
| 18 | + |
1 | 19 | #configs input {
|
2 | 20 | width: 100%;
|
3 |
| - font-family: monospace; |
| 21 | + padding: var(--spacing-xs); |
| 22 | + box-sizing: border-box; |
| 23 | + line-height: var(--line-height-base); |
| 24 | + font-size: var(--font-size-base); |
| 25 | + color: var(--color-text); |
| 26 | + font-family: var(--font-family-mono); |
4 | 27 | background-color: transparent;
|
5 | 28 | border: 0;
|
6 | 29 | border-radius: 0;
|
| 30 | + outline: none; |
| 31 | + appearance: none; |
| 32 | + -webkit-font-smoothing: antialiased; |
| 33 | + -moz-osx-font-smoothing: grayscale; |
7 | 34 | }
|
8 | 35 |
|
9 | 36 | .config__headline > span,
|
10 |
| -.config__url.config__url { |
| 37 | +.config__url { |
11 | 38 | hyphens: none;
|
12 | 39 | word-break: break-word;
|
| 40 | + overflow-wrap: break-word; |
| 41 | + text-wrap: wrap; |
13 | 42 | }
|
14 | 43 |
|
15 | 44 | .config__url em {
|
16 | 45 | padding-right: 0.125em;
|
17 | 46 | letter-spacing: -0.05em;
|
18 | 47 | opacity: 0.75;
|
| 48 | + font-style: italic; |
19 | 49 | }
|
20 | 50 |
|
21 | 51 | .config__url .config__url-amp:last-child {
|
22 |
| - display: none; |
| 52 | + display: none !important; |
23 | 53 | }
|
24 | 54 |
|
25 | 55 | .js__copy-element {
|
|
29 | 59 | width: 0;
|
30 | 60 | height: 0;
|
31 | 61 | opacity: 0;
|
| 62 | + pointer-events: none; |
| 63 | + user-select: text; |
| 64 | +} |
32 | 65 |
|
33 |
| - &::selection { |
34 |
| - background-color: transparent; |
35 |
| - } |
| 66 | +.js__copy-element::selection { |
| 67 | + background-color: transparent; |
36 | 68 | }
|
37 | 69 |
|
38 | 70 | .noscript {
|
39 | 71 | font-weight: 600;
|
40 |
| - color: #f00; |
| 72 | + color: var(--color-error); |
| 73 | + background: var(--color-error-bg); |
| 74 | + padding: var(--spacing-sm); |
| 75 | + border: 1px solid var(--color-error); |
41 | 76 | }
|
42 | 77 |
|
43 | 78 | button[data-bind-click="copy"] {
|
| 79 | + padding: var(--button-padding-y) var(--button-padding-x); |
44 | 80 | border: 2px solid transparent;
|
45 |
| - transition: border-color 0.2s linear; |
| 81 | + border-radius: var(--border-radius-sm); |
| 82 | + background-color: #fff; |
| 83 | + color: var(--color-text); |
| 84 | + cursor: pointer; |
| 85 | + font: inherit; |
| 86 | + line-height: 1.2; |
| 87 | + transition: var(--transition-border), var(--transition-shadow); |
| 88 | +} |
| 89 | + |
| 90 | +button[data-bind-click="copy"]:focus-visible { |
| 91 | + outline: 2px dashed var(--color-accent); |
| 92 | + outline-offset: 2px; |
46 | 93 | }
|
47 | 94 |
|
48 |
| -button[data-bind-click="copy"].copied { |
49 |
| - &, |
50 |
| - &:hover, |
51 |
| - &:active { |
52 |
| - border-color: rgba(0, 128, 0, 0.5); |
53 |
| - box-shadow: inset 0 2px 4px rgba(0, 128, 0, 0.15); |
54 |
| - } |
| 95 | +button[data-bind-click="copy"].copied, |
| 96 | +button[data-bind-click="copy"].copied:hover, |
| 97 | +button[data-bind-click="copy"].copied:active { |
| 98 | + border-color: var(--color-accent); |
| 99 | + box-shadow: inset 0 2px 4px var(--color-accent-bg); |
55 | 100 | }
|
0 commit comments