demucs-server/src/demucs_server/static/styles.css

266 lines
3.9 KiB
CSS

:root {
--col-bg: #25181b;
--col-bg-dark: #1e1417;
--col-bg-light: #331f23;
--col-accent: #44cf6c;
--col-accent-dark: #32a287;
--col-accent-light: #a9fdac;
--col-fg: #f5fff2;
--font-main: "Inter", "Arial", sans-serif;
--font-mono: ui-monospace, "Cascadia Mono", "Segoe UI Mono", "Courier New",
monospace;
}
html {
color-scheme: dark;
font-family: var(--font-main);
font-size: 1.25rem;
color: var(--col-fg);
background-color: var(--col-bg);
}
html,
body {
padding: 0;
margin: 0;
}
body {
display: flex;
flex-direction: column;
min-height: 100vh;
}
main {
flex: 1;
width: calc(100% - 1em);
max-width: 80ch;
margin: 0 auto;
padding: 0.5em;
}
code {
font-family: var(--font-mono);
font-size: 1rem;
}
a {
color: var(--col-accent);
text-decoration: none;
}
a:hover {
border-bottom: 1px solid var(--col-accent);
}
.logo {
display: inline;
height: 3.5em;
}
header {
display: flex;
flex-direction: row;
justify-content: center;
align-items: center;
gap: 1em;
}
.tagline {
text-align: center;
margin-top: 0.25em;
}
header.vertical {
flex-direction: column;
gap: 0.5em;
}
header h1 {
margin: 0;
margin-bottom: 0.5em;
}
header + h2 {
margin-top: 0;
}
header small {
font-size: 1em;
}
form {
display: flex;
flex-direction: column;
padding: 1em;
border: 2.5px solid var(--col-accent-dark);
border-radius: 8px;
}
form :first-child {
margin-top: 0;
}
form :last-child {
margin-bottom: 0;
}
label {
margin-bottom: 0.5em;
}
input {
background-color: transparent;
border: 1.5px solid var(--col-accent-light);
outline: none;
border-radius: 8px;
font-family: var(--font-main);
font-size: 1em;
padding: 0.75rem 1rem;
margin-bottom: 0.75rem;
box-shadow: none;
width: calc(100% - 2rem);
color: var(--col-fg);
}
.file-upload {
margin: 0.75rem 0;
overflow-x: clip;
white-space: nowrap;
}
input[type="url"] {
margin-bottom: 0.25em;
}
.file-upload + p,
input[type="url"] + p {
margin-top: 0.25em;
padding-left: 1.5em;
}
input:active,
input:focus {
border-color: var(--col-accent);
}
input[type="file"] {
display: none;
}
button,
.file-upload-button {
font-family: var(--font-main);
font-size: 1em;
background-color: var(--col-accent-light);
border: 1.5px solid var(--col-accent-light);
border-radius: 8px;
outline: none;
color: var(--col-bg);
padding: 0.5rem;
}
.file-upload-button {
margin-right: 0.5em;
}
button:hover {
cursor: pointer;
background-color: var(--col-accent);
}
input::placeholder {
opacity: 0.33;
text-transform: lowercase;
}
dl {
display: flex;
flex-direction: row;
gap: 0.5ch;
margin: 0;
}
dt {
font-weight: bold;
}
dt::after {
content: ":";
}
dd {
margin: 0;
display: inline;
}
footer {
display: flex;
flex-direction: row;
justify-content: space-between;
padding: 1em;
background-color: var(--col-bg-dark);
}
nav ul {
list-style: none;
display: flex;
flex-direction: row;
gap: 0.5em;
margin: 0;
padding: 0;
}
nav ul li {
display: table-cell;
padding: 0.1em 0;
vertical-align: middle;
}
nav ul li + li {
border-inline-start: 1px solid var(--col-fg);
padding-inline-start: 0.5em;
}
.track-list {
padding: 0;
}
.track-list li {
display: flex;
flex-direction: row;
list-style: none;
padding: 0;
margin: 1em;
align-items: center;
justify-content: space-between;
}
.track-list a {
display: inline-block;
padding: 0.5em 0.5em;
margin-right: 1em;
border: 1px solid var(--col-accent);
border-radius: 4px;
width: 8em;
text-align: right;
}
.track-list a:hover {
background: var(--col-accent);
color: var(--col-bg);
}
.track-list audio {
flex: 1;
}