church_streamer/public/assets/app.css

350 lines
5.4 KiB
CSS

[hidden] {
display: none !important;
}
:root {
--bg: #282828;
--bg-inner: #323232;
--bg-outer: #1c1c1c;
--green: #82e854;
--red: #ff0013;
--orange: hsl(28.1, 100%, 65.1%);
--color: #fff;
--color-alt: #fff6;
--main: white;
--main-fg: #fff;
--error: red;
--error-bg: hsl(0, 75%, 80%);
}
/* Box sizing rules */
*,
*::before,
*::after {
box-sizing: border-box;
}
/* Remove default margin */
body, h1, h2, h3, h4, h5, p, figure, blockquote, dl, dd, pre {
margin: 0;
}
body {
min-height: 100vh;
text-rendering: optimizeSpeed;
line-height: 1.5;
font-size: 16px;
font-family: 'Inter var', Helvetica, Arial, sans-serif;
font-variation-settings: "slnt" 0;
font-feature-settings: "case", "frac", "tnum", "ss02", "calt", "ccmp", "kern";
background: var(--bg);
color: var(--color);
display: flex;
flex-direction: column;
}
main {
flex: 2 1 auto;
display: flex;
flex-direction: column;
}
a, a:visited {
color: var(--main);
text-decoration: underline;
}
.italic {
font-variation-settings: "slnt" 10deg;
}
nav {
background: rgb(45,45,45);
background: linear-gradient(180deg, rgba(45,45,45,1) 0%, rgba(19,19,19,1) 100%);
height: 5rem;
align-items: center;
padding: 0.5rem;
border-bottom: 1px solid black;
}
nav .logo {
background: url('./filadelfia_white.svg') left center no-repeat;
background-size: contain;
display: block;
padding-left: 4.5rem;
align-self: stretch;
line-height: 3.75rem;
border-bottom: none;
}
nav a {
border-bottom: 1px solid transparent;
}
nav .logo.live {
background-image: url('./filadelfia.svg');
}
nav a.active {
border-bottom-color: var(--orange);
}
nav a.active .fal {
background-color: var(--orange);
}
nav a.icon {
font-size: 2rem;
align-self: center;
line-height: 2rem;
padding: 0.5rem;
}
footer {
font-size: 0.9rem;
color: var(--color-alt);
text-align: center;
padding: 1em;
}
footer a,
footer a:visited {
color: var(--color-alt);
}
input, pre, .pre, textarea {
background: var(--bg);
color: var(--color);
border: 1px solid var(--bg-outer);
border-radius: 0.25rem;
padding: 0.25rem 0.5rem;
}
input:active,
input:focus,
textarea:active,
textarea:focus {
border-color: var(--orange);
outline: none;
}
input:read-only,
pre {
color: var(--orange);
border-color: var(--bg-outer);
}
input.green {
color: var(--green);
}
input.red {
color: var(--red);
}
input, button, textarea, select {
font: inherit;
}
textarea {
min-height: 100px;
}
h1 {
font-size: 1.88rem;
border-bottom: 1px solid var(--color);
}
h2 {
font-size: 1.66rem;
border-bottom: 1px solid var(--color);
}
h3 {
font-size: 1.44rem;
border-bottom: 1px solid var(--color);
}
h4 {
font-size: 1.22rem;
}
h5 {
font-size: 1.0rem;
}
.column {
display: flex;
flex-direction: column;
padding: 0.5rem 0rem 0rem 1rem;
}
.column > * {
margin-right: 1rem;
margin-bottom: 1rem;
}
.column > p {
margin-bottom: 0.5rem;
}
.row {
display: flex;
margin-right: 0;
align-items: center;
}
.row > * {
margin-right: 1rem;
}
.row input {
flex: 2 1 auto;
}
.error {
font-weight: bold;
background: var(--error);
color: var(--bg);
}
.fal {
display: inline-block;
width: 1em;
height: 1em;
mask-position: center;
mask-size: contain;
background-color: white;
}
.fal.green {
background-color: var(--green);
}
.fal.red {
background-color: var(--red);
}
.fa-wrench {
mask-image: url('./wrench.svg');
}
.fa-video {
mask-image: url('./video.svg');
}
.fa-display {
mask-image: url('./display.svg');
}
.filler {
flex-grow: 2;
}
.meta {
color: var(--color-alt);
font-size: 0.8rem;
margin-top: -0.75rem;
padding-bottom: 0.5rem;
}
.meta .pre {
margin-left: 0.25em;
margin-right: 0.25em;
}
pre {
height: 400px;
overflow-y: auto;
white-space: pre-wrap;
word-wrap: break-word;
}
.pre {
color: var(--color-alt);
padding: 0.1em 0.5em;
}
.button {
border-radius: 0.5rem;
padding: 0.25rem 1rem;
background: #383838;
background: linear-gradient(180deg, #383838 0%, #383838 5%, #222222 100%);
border: 1px solid var(--bg-outer);
box-shadow: 1px 1px 3px #0005;
align-self: center;
min-width: 150px;
color: var(--color);
cursor: pointer;
}
.button:hover {
background: #494949;
background: linear-gradient(180deg, #494949 0%, #494949 5%, #2c2c2c 100%);
}
.button:active {
background: #1b1b1b;
color: var(--orange);
}
.button:disabled {
border-color: black;
background: var(--bg-outer);
box-shadow: none;
color: var(--color-alt);
cursor: unset;
}
.settings {
width: calc(100vw - 2.5rem);
max-width: 1100px;
margin: 2rem auto 1rem;
background: var(--bg-inner);
border: 1px solid var(--bg-outer);
border-radius: 0.5rem;
}
.status {
align-self: center;
margin-top: 2rem;
height: auto;
}
pre.status {
font-family: 'LEDCalculator';
font-size: min(7vw, 4rem);
background: var(--bg-outer);
}
.disconnected > * {
position: fixed;
width: 0.5rem;
height: 0.5rem;
background: var(--error);
}
.disconnected .top,
.disconnected .left {
top: 0;
left: 0;
}
.disconnected .right,
.disconnected .bottom {
right: 0;
bottom: 0;
}
.disconnected .top,
.disconnected .bottom {
width: 100%;
}
.disconnected .left,
.disconnected .right {
height: 100%;
}
.disconnected .error {
border: none;
text-align: center;
padding: 0.5rem;
position: fixed;
width: auto;
height: auto;
bottom: 0.5rem;
max-width: 100vw;
left: 50%;
transform: translateX(-50%);
}