mirror of https://github.com/sveltejs/svelte
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
247 lines
3.7 KiB
247 lines
3.7 KiB
1 year ago
|
body {
|
||
|
--bg-1: hsl(0, 0%, 100%);
|
||
|
--bg-2: hsl(206, 20%, 90%);
|
||
|
--bg-3: hsl(206, 20%, 80%);
|
||
|
--fg-1: hsl(0, 0%, 13%);
|
||
|
--fg-2: hsl(0, 0%, 20%);
|
||
|
--fg-2: hsl(0, 0%, 30%);
|
||
|
--link: hsl(208, 77%, 47%);
|
||
|
--link-hover: hsl(208, 77%, 55%);
|
||
|
--link-active: hsl(208, 77%, 40%);
|
||
|
--border-radius: 4px;
|
||
|
--font: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Oxygen, Ubuntu, Cantarell,
|
||
|
'Open Sans', 'Helvetica Neue', sans-serif;
|
||
|
--font-mono: ui-monospace, 'Cascadia Code', 'Source Code Pro', Menlo, Consolas, 'DejaVu Sans Mono',
|
||
|
monospace;
|
||
|
background: var(--bg-1);
|
||
|
color: var(--fg-1);
|
||
|
font-family: var(--font);
|
||
|
line-height: 1.5;
|
||
|
margin: 1rem;
|
||
|
height: calc(100vh - 2rem);
|
||
|
}
|
||
|
|
||
|
h1,
|
||
|
h2,
|
||
|
h3,
|
||
|
h4,
|
||
|
h5,
|
||
|
h6 {
|
||
|
font-weight: normal;
|
||
|
font-variant-numeric: tabular-nums;
|
||
|
line-height: 1.1;
|
||
|
}
|
||
|
|
||
|
:is(h1, h2, h3, h4, h5, h6, p) {
|
||
|
margin: 1rem 0.1rem;
|
||
|
}
|
||
|
|
||
|
label {
|
||
|
margin: 0.5rem 0.1rem;
|
||
|
}
|
||
|
|
||
|
:is(h1, h2, h3, h4, h5, h6, p, label):first-child {
|
||
|
margin-top: 0;
|
||
|
}
|
||
|
|
||
|
:is(h1, h2, h3, h4, h5, h6, p, label):last-child {
|
||
|
margin-bottom: 0;
|
||
|
}
|
||
|
|
||
|
a {
|
||
|
color: var(--link);
|
||
|
}
|
||
|
|
||
|
a:hover {
|
||
|
color: var(--link-hover);
|
||
|
}
|
||
|
|
||
|
a:active {
|
||
|
color: var(--link-active);
|
||
|
}
|
||
|
|
||
|
label {
|
||
|
display: flex;
|
||
|
gap: 0.5rem;
|
||
|
align-items: center;
|
||
|
}
|
||
|
|
||
|
label input {
|
||
|
margin: 0;
|
||
|
}
|
||
|
|
||
|
button,
|
||
|
input,
|
||
|
select {
|
||
|
font-family: inherit;
|
||
|
font-size: inherit;
|
||
|
}
|
||
|
|
||
|
button {
|
||
|
background: var(--link);
|
||
|
color: var(--bg-1);
|
||
|
padding: 0.5rem 1rem;
|
||
|
border: none;
|
||
|
border-radius: var(--border-radius);
|
||
|
}
|
||
|
|
||
|
button:hover {
|
||
|
background: var(--link-hover);
|
||
|
}
|
||
|
|
||
|
button:active {
|
||
|
background: var(--link-active);
|
||
|
}
|
||
|
|
||
|
:is(button, button:hover, button:active):disabled {
|
||
|
background: var(--link);
|
||
|
filter: grayscale(1);
|
||
|
opacity: 0.4;
|
||
|
}
|
||
|
|
||
|
input,
|
||
|
textarea,
|
||
|
select {
|
||
|
padding: 0.5rem;
|
||
|
border: 1px solid var(--bg-2);
|
||
|
border-radius: var(--border-radius);
|
||
|
box-sizing: border-box;
|
||
|
}
|
||
|
|
||
|
input,
|
||
|
textarea {
|
||
|
background: var(--bg-1);
|
||
|
}
|
||
|
|
||
|
select:not([multiple]) {
|
||
|
background: var(--bg-2);
|
||
|
}
|
||
|
|
||
|
textarea {
|
||
|
font-family: var(--font-mono);
|
||
|
font-size: 0.9rem;
|
||
|
}
|
||
|
|
||
|
form {
|
||
|
display: flex;
|
||
|
flex-direction: column;
|
||
|
gap: 1rem;
|
||
|
align-items: baseline;
|
||
|
}
|
||
|
|
||
|
ul:has(li):has(form) {
|
||
|
list-style: none;
|
||
|
padding: 0;
|
||
|
}
|
||
|
|
||
|
li form {
|
||
|
flex-direction: row;
|
||
|
gap: 0.5rem;
|
||
|
margin: 0.5rem 0;
|
||
|
}
|
||
|
|
||
|
nav {
|
||
|
position: relative;
|
||
|
display: flex;
|
||
|
gap: 1em;
|
||
|
padding: 1em;
|
||
|
background: var(--bg-2);
|
||
|
z-index: 2;
|
||
|
margin: 0 0 1em 0;
|
||
|
border-radius: var(--border-radius);
|
||
|
}
|
||
|
|
||
|
nav a {
|
||
|
text-decoration: none;
|
||
|
}
|
||
|
|
||
|
nav a[aria-current='true'] {
|
||
|
border-bottom: 2px solid;
|
||
|
}
|
||
|
|
||
|
ul:has(form) {
|
||
|
list-style: none;
|
||
|
padding: 0;
|
||
|
}
|
||
|
|
||
|
progress {
|
||
|
margin: 0.5rem 0;
|
||
|
}
|
||
|
|
||
|
progress:first-child {
|
||
|
margin-top: 0;
|
||
|
}
|
||
|
|
||
|
progress:lsat-child {
|
||
|
margin-bottom: 0;
|
||
|
}
|
||
|
|
||
|
.error {
|
||
|
color: red;
|
||
|
}
|
||
|
|
||
|
code {
|
||
|
background: var(--bg-2);
|
||
|
font-family: var(--font-mono);
|
||
|
font-size: 0.9em;
|
||
|
padding: 0.15rem 0.3rem;
|
||
|
border-radius: var(--border-radius);
|
||
|
}
|
||
|
|
||
|
ul.todos {
|
||
|
padding: 0;
|
||
|
}
|
||
|
|
||
|
ul.todos li:not(:has(> form)),
|
||
|
ul.todos li form {
|
||
|
position: relative;
|
||
|
display: flex;
|
||
|
align-items: center;
|
||
|
padding: 0.5em 0.5em 0.5em 1em;
|
||
|
margin: 0 0 0.5em 0;
|
||
|
gap: 0.5em;
|
||
|
border-radius: 5px;
|
||
|
user-select: none;
|
||
|
background: var(--bg-1);
|
||
|
filter: drop-shadow(2px 3px 6px rgba(0, 0, 0, 0.1));
|
||
|
transition:
|
||
|
filter 0.2s,
|
||
|
opacity 0.2s;
|
||
|
}
|
||
|
|
||
|
ul.todos .done {
|
||
|
filter: none;
|
||
|
opacity: 0.4;
|
||
|
}
|
||
|
|
||
|
ul.todos button {
|
||
|
border: none;
|
||
|
background-color: transparent;
|
||
|
background-repeat: no-repeat;
|
||
|
background-position: 50% 50%;
|
||
|
background-size: 1rem 1rem;
|
||
|
cursor: pointer;
|
||
|
width: 3em;
|
||
|
height: 3em;
|
||
|
margin: -0.5em -0.5em -0.5em 0;
|
||
|
aspect-ratio: 1;
|
||
|
opacity: 0.5;
|
||
|
transition: opacity 0.2s;
|
||
|
}
|
||
|
|
||
|
ul.todos button:hover {
|
||
|
opacity: 1;
|
||
|
}
|
||
|
|
||
|
body.dark {
|
||
|
--bg-1: hsl(0, 0%, 18%);
|
||
|
--bg-2: hsl(0, 0%, 30%);
|
||
|
--bg-3: hsl(0, 0%, 40%);
|
||
|
--fg-1: hsl(0, 0%, 90%);
|
||
|
--fg-2: hsl(0, 0%, 70%);
|
||
|
--fg-3: hsl(0, 0%, 60%);
|
||
|
--link: hsl(206, 96%, 72%);
|
||
|
--link-hover: hsl(206, 96%, 78%);
|
||
|
--link-active: hsl(206, 96%, 64%);
|
||
|
}
|