Files
eleith b8d12237a0
ci/woodpecker/push/web-jobs Pipeline was successful
ci/woodpecker/push/web-theme Pipeline was successful
ci/woodpecker/push/web-worker Pipeline was successful
ci/woodpecker/push/web Pipeline was successful
[web] integrate editor actions and preserve drafts
2026-10-28 21:36:40 +00:00

225 lines
4.5 KiB
CSS

.button {
display: inline-block;
padding: 1px 6px;
text-transform: uppercase;
height: 50px;
color: var(--color-surface);
background-color: var(--color-primary);
box-shadow: inset 0 -0.6em 0 -0.35em rgba(0, 0, 0, 0.17);
text-align: center;
position: relative;
cursor: pointer;
border: none;
border-radius: var(--radius-small);
}
.button[disabled] {
cursor: not-allowed;
opacity: 0.6;
}
.button:active {
top: 0.2em;
}
.button:hover {
filter: brightness(90%);
}
.button[data-variant='primary'] {
background-color: var(--color-primary);
color: var(--color-on-primary);
}
.button[data-variant='secondary'] {
background-color: var(--color-secondary);
color: var(--color-on-secondary);
}
.button[data-variant='tertiary'] {
background-color: var(--color-tertiary);
color: var(--color-on-tertiary);
}
.button[data-variant='error'] {
background-color: var(--color-error);
color: var(--color-on-error);
}
.button[data-variant='outline'] {
background-color: transparent;
border: 2px solid var(--color-outline);
color: var(--color-on-surface);
box-shadow: none;
}
.button[data-variant='link'] {
background-color: transparent;
border: none;
box-shadow: none;
color: var(--color-primary);
height: auto;
padding: 0;
text-decoration: none;
text-transform: none;
}
.button[data-variant='link']:hover {
filter: none;
text-decoration: underline;
}
.button[data-variant='editor'] {
display: inline-flex;
align-items: center;
gap: var(--space-1);
height: auto;
min-height: calc(var(--space-4) + var(--space-2));
padding: var(--space-1) var(--space-2);
border: 1px solid transparent;
border-radius: var(--radius-small);
background: transparent;
color: inherit;
box-shadow: none;
font: inherit;
text-transform: none;
top: 0;
filter: none;
}
.button[data-variant='editor']:not(:disabled):hover,
.button[data-variant='editor'][data-state='open'] {
background-color: var(--editor-selection, var(--color-surface-container-highest));
border-color: var(--editor-border, var(--color-outline));
}
.button[data-variant='editor']:focus-visible {
outline: 2px solid var(--editor-caret, var(--color-primary));
outline-offset: 2px;
}
.input::file-selector-button {
display: inline-block;
padding: 1px 6px;
text-transform: uppercase;
height: 50px;
color: var(--color-surface);
background-color: var(--color-primary);
box-shadow: inset 0 -0.6em 0 -0.35em rgba(0, 0, 0, 0.17);
text-align: center;
position: relative;
cursor: pointer;
border: none;
}
.input[type='file'] {
max-width: 100%;
}
.input[type='text'],
.input[type='date'],
.input[type='email'],
.input[type='number'],
.input[type='password'],
select.input {
border: 3px solid var(--color-surface-inverse);
background: var(--color-surface-container-highest);
height: 50px;
line-height: normal;
color: var(--color-on-surface);
display: inline-block;
box-sizing: border-box;
user-select: auto;
font-size: 16px;
padding: 0 6px;
padding-left: 12px;
outline: none;
}
textarea.input {
border: 3px solid var(--color-surface-inverse);
background: var(--color-surface-container-highest);
min-height: 100px;
line-height: 1.5;
color: var(--color-on-surface);
display: inline-block;
box-sizing: border-box;
user-select: auto;
font-size: 16px;
padding: 12px;
outline: none;
resize: vertical;
field-sizing: content;
}
.input:focus {
background: var(--color-surface-inverse);
color: var(--color-on-surface-inverse);
}
p {
margin: 0;
margin-top: var(--space-3);
margin-bottom: var(--space-3);
}
html {
color: var(--color-on-surface);
}
body {
background-color: var(--color-surface);
background-image: linear-gradient(
to bottom,
var(--color-surface-container-lowest) 0px,
var(--color-surface) 100px
);
background-repeat: no-repeat;
}
html {
--font-size-min-num: calc(var(--font-size-root) * var(--font-size-mobile-responsive-factor));
--slope: calc(
(var(--font-size-root) - var(--font-size-min-num)) /
(var(--breakpoint-tablet) - var(--breakpoint-phone))
);
--base-num: calc(var(--font-size-min-num) - (var(--slope) * var(--breakpoint-phone)));
font-size: clamp(
calc(var(--font-size-min-num) * 1px),
calc((var(--base-num) * 1px) + (var(--slope) * 100vw)),
calc(var(--font-size-root) * 1px)
);
}
h1 {
font-size: var(--font-size-xxl);
}
h2 {
font-size: var(--font-size-xl);
}
h3 {
font-size: var(--font-size-large);
}
a {
color: var(--color-primary);
}
a:hover {
text-decoration: underline;
}
.visually-hidden {
position: absolute;
width: 1px;
height: 1px;
padding: 0;
margin: -1px;
overflow: hidden;
clip: rect(0, 0, 0, 0);
white-space: nowrap;
border: 0;
}