Scylla/static/scss/style.scss

354 lines
5.9 KiB
SCSS
Raw Normal View History

2018-12-21 19:31:42 -08:00
@import url('https://fonts.googleapis.com/css?family=Open+Sans|Source+Code+Pro');
2019-08-21 21:20:30 -07:00
@import 'mixins';
@import 'variables';
@import 'components';
2019-05-19 13:23:16 -07:00
html, body {
height: 100vh;
}
2018-12-10 12:21:08 -08:00
body {
font-family: 'Open Sans', sans-serif;
2019-08-21 21:40:58 -07:00
margin: 0;
background-color: $background-color;
2019-08-23 21:22:38 -07:00
font-size: .7em;
2018-12-25 18:28:32 -08:00
color: white;
2018-12-10 12:21:08 -08:00
}
2018-12-22 00:05:32 -08:00
input, textarea {
2018-12-10 12:21:08 -08:00
@include input-common();
overflow-x: hidden;
2018-12-10 12:21:08 -08:00
background-color: $inactive-input-color;
2018-12-25 18:28:32 -08:00
color: white;
border: none;
2019-08-21 21:40:58 -07:00
padding: .5em;
2018-12-10 12:21:08 -08:00
&:focus {
background-color: $active-input-color;
}
}
button {
@include input-common();
border: none;
background-color: $primary-color;
color: white;
2018-12-10 12:47:31 -08:00
text-transform: uppercase;
2018-12-10 12:21:08 -08:00
&:hover, &:focus {
background-color: $primary-color-highlight;
}
}
2018-12-10 12:47:31 -08:00
2019-08-21 21:20:30 -07:00
2018-12-10 12:47:31 -08:00
a {
text-decoration: none;
color: $primary-color;
&:hover {
color: $primary-color-highlight;
}
}
2019-08-21 21:20:30 -07:00
h1, h2, h3, h4, h5, h6 {
2019-08-21 21:40:58 -07:00
margin: 0;
margin-bottom: .5em;
}
2019-08-21 21:20:30 -07:00
/*
* Errors
*/
2018-12-23 00:23:48 -08:00
div.errors-wrapper {
position: fixed;
pointer-events: none;
2019-08-21 21:40:58 -07:00
top: 0;
bottom: 0;
left: 0;
right: 0;
2018-12-23 00:23:48 -08:00
overflow: hidden;
}
div.error-wrapper {
pointer-events: auto;
2019-08-21 21:40:58 -07:00
width: 40%;
padding: .5em;
2018-12-23 00:23:48 -08:00
background-color: $error-color;
2019-08-21 21:40:58 -07:00
border: .1em solid $error-color-dark;
2018-12-23 00:23:48 -08:00
color: white;
margin: auto;
2019-08-21 21:40:58 -07:00
margin-top: .85em;
margin-bottom: .85em;
font-size: 1em;
2018-12-23 00:23:48 -08:00
align-items: center;
2019-08-21 18:40:45 -07:00
overflow-x: hidden;
white-space: nowrap;
text-overflow: ellipsis;
2018-12-23 00:23:48 -08:00
.feather-icon {
2019-08-21 21:40:58 -07:00
margin-right: .85em;
2018-12-23 00:23:48 -08:00
}
}
2018-12-10 12:47:31 -08:00
/*
* Login Screen
*/
div.login-wrapper {
display: flex;
flex-direction: column;
2019-08-21 21:40:58 -07:00
max-width: 30%;
2018-12-10 12:47:31 -08:00
margin: auto;
2019-08-21 21:40:58 -07:00
margin-top: 1.5em;
2018-12-10 12:47:31 -08:00
input, button {
2019-08-21 21:40:58 -07:00
margin: .3em;
2018-12-10 12:47:31 -08:00
}
}
/*
* Base View
*/
div.base-wrapper {
display: flex;
height: 100%;
}
/*
* The list of rooms
*/
2019-08-21 21:20:30 -07:00
div.rooms-container {
2019-08-21 21:40:58 -07:00
border-right: .1em solid $background-color-dark;
2019-08-21 21:20:30 -07:00
}
div.rooms-wrapper {
flex-shrink: 0;
2019-05-19 13:47:06 -07:00
width: 15%;
2019-08-21 21:40:58 -07:00
min-width: 20em;
padding: .85em;
2019-08-21 21:20:30 -07:00
box-sizing: border-box;
2019-08-21 21:40:58 -07:00
border-right: .1em solid $background-color-dark;
.room-search {
2019-08-21 21:40:58 -07:00
padding: .5em;
width: 100%;
box-sizing: border-box;
}
2018-12-13 17:47:58 -08:00
}
div.room-link-wrapper {
whitespace: nowrap;
2019-08-21 21:40:58 -07:00
border-left: solid .2em $background-color;
padding-left: .5em;
margin: .3em;
2019-08-21 21:20:30 -07:00
display: flex;
2019-05-19 13:23:16 -07:00
align-items: center;
2019-08-21 21:20:30 -07:00
2019-05-19 15:01:02 -07:00
.feather-icon {
2019-05-19 15:33:55 -07:00
height: 1.2em;
2019-05-19 15:01:02 -07:00
}
2019-08-21 21:20:30 -07:00
span.notification-count {
2019-05-19 15:01:02 -07:00
color: $alert-color;
2019-08-21 21:40:58 -07:00
margin-right: .5em;
2019-05-19 15:01:02 -07:00
display: flex;
align-items: center;
&.bright {
color: $alert-color-bright;
}
}
a {
2019-05-19 13:23:16 -07:00
color: lightgrey;
2019-05-19 15:51:33 -07:00
white-space: nowrap;
overflow: hidden;
text-overflow: ellipsis;
2019-05-19 13:23:16 -07:00
}
&:hover a {
color: $primary-color;
2019-05-19 13:26:30 -07:00
transition: color $transition-duration;
2019-05-19 13:23:16 -07:00
}
&.active {
2019-08-21 21:40:58 -07:00
border-left: solid .2em $primary-color;
}
2019-05-19 13:42:22 -07:00
&.hidden {
display: none;
}
}
2018-12-27 00:12:48 -08:00
div.reconnect-wrapper {
position: fixed;
2019-08-21 21:40:58 -07:00
bottom: 1.5em;
left: 1.5em;
padding: .85em;
2018-12-27 00:12:48 -08:00
display: flex;
align-items: center;
background-color: $inactive-input-color;
2019-05-19 13:23:16 -07:00
border-radius: $border-radius;
2018-12-27 00:12:48 -08:00
.feather-icon {
2019-08-21 21:40:58 -07:00
margin-right: .85em;
2018-12-27 00:12:48 -08:00
}
}
/*
* The current room, if any.
*/
div.room-wrapper {
display: flex;
flex-direction: column;
2019-08-21 21:40:58 -07:00
padding: .85em;
}
2018-12-15 18:14:40 -08:00
div.typing-wrapper {
2019-08-21 21:40:58 -07:00
padding: .5em;
height: 1em;
2018-12-22 00:44:05 -08:00
flex-shrink: 0;
2018-12-15 18:14:40 -08:00
}
div.message-wrapper {
display: flex;
2018-12-13 18:41:43 -08:00
flex-shrink: 0;
2018-12-22 00:05:32 -08:00
input, textarea {
2018-12-20 19:22:51 -08:00
flex-grow: 12;
2019-08-21 21:40:58 -07:00
margin: .3em;
}
button {
2019-08-21 21:40:58 -07:00
margin: .3em;
height: 3em;
width: 3em;
2019-08-21 21:20:30 -07:00
transition: color $transition-duration;
background-color: $background-color;
color: $primary-color;
&:hover {
color: $primary-color-light;
}
2018-12-10 12:47:31 -08:00
}
}
2018-12-10 14:20:06 -08:00
div.messages-wrapper {
overflow-y: scroll;
flex-grow: 1;
2018-12-19 21:52:07 -08:00
a.history-link {
display: block;
width: 100%;
text-align: center;
box-sizing: border-box;
2019-08-21 21:40:58 -07:00
padding: .5em;
2018-12-19 21:52:07 -08:00
}
}
table.messages-table {
border-collapse: collapse;
width: 100%;
table-layout: fixed;
2018-12-10 14:20:06 -08:00
td {
2019-08-21 21:40:58 -07:00
padding: .5em;
vertical-align: top;
2018-12-10 14:20:06 -08:00
}
2018-12-13 19:45:55 -08:00
img {
max-width: 90%;
2019-08-21 21:40:58 -07:00
max-height: 30em;
margin-top: .85em;
margin-bottom: .85em;
box-shadow: 0 0 .5em rgba(0, 0, 0, .5);
2018-12-13 19:45:55 -08:00
}
.sending {
color: grey;
}
2018-12-23 20:26:35 -08:00
video {
max-width: 90%;
2019-08-21 21:40:58 -07:00
max-height: 30em;
2018-12-23 20:26:35 -08:00
}
td:nth-child(1) {
width: 10%;
white-space: nowrap;
}
2018-12-10 14:20:06 -08:00
}
div.message {
p {
2019-08-21 21:40:58 -07:00
margin: 0;
}
2018-12-21 19:31:42 -08:00
blockquote {
2019-08-21 21:40:58 -07:00
margin: 0 0 0 0;
padding-left: .5em;
border-left: .4em solid $primary-color;
2018-12-21 19:31:42 -08:00
}
code {
font-family: Iosevka, "Source Code Pro", monospace,
}
pre code {
width: 100%;
overflow: auto;
display: block;
box-sizing: border-box;
2019-08-21 21:40:58 -07:00
padding: .85em;
2019-02-25 20:40:46 -08:00
background-color: $background-color-dark;
2019-05-19 13:23:16 -07:00
border-radius: $border-radius;
2019-02-25 19:58:05 -08:00
box-shadow: $inset-shadow;
2018-12-21 19:31:42 -08:00
}
}
2018-12-10 14:20:06 -08:00
span.sender-wrapper {
2019-05-19 13:23:16 -07:00
border-radius: $border-radius;
2019-08-21 21:40:58 -07:00
padding-left: .5em;
padding-right: .5em;
display: inline-block;
box-sizing: border-box;
text-align: right;
font-weight: 800;
width: 100%;
2018-12-10 23:27:45 -08:00
text-overflow: ellipsis;
overflow: hidden;
vertical-align: bottom; /* Fix for overflow changing element height */
2018-12-25 18:28:32 -08:00
color: black;
2018-12-10 14:20:06 -08:00
}
2018-12-10 16:16:39 -08:00
2019-08-21 21:20:30 -07:00
a.file-wrapper {
2019-08-21 21:40:58 -07:00
padding: .5em 0 .5em 0;
2019-08-21 21:20:30 -07:00
display: flex;
align-items: center;
.feather-icon {
2019-08-21 21:40:58 -07:00
height: 2em;
width: 2em;
margin-right: .85em;
2019-08-21 21:20:30 -07:00
}
}
2019-09-08 15:00:52 -07:00
.message-notice {
text-transform: uppercase;
}
2019-08-21 21:20:30 -07:00
2018-12-10 16:16:39 -08:00
/**
* Icons
*/
.feather-icon {
2019-02-25 20:34:02 -08:00
vertical-align: middle;
2018-12-10 16:16:39 -08:00
stroke: currentColor;
stroke-width: 2;
stroke-linecap: round;
stroke-linejoin: round;
fill: none;
2019-08-21 21:40:58 -07:00
height: 1.5em;
width: 1.5em;
2018-12-10 16:16:39 -08:00
}