1275 lines
22 KiB
CSS
1275 lines
22 KiB
CSS
*,
|
|
::before,
|
|
::after {
|
|
padding: 0;
|
|
margin: 0;
|
|
box-sizing: border-box;
|
|
font-family: "Roboto", sans-serif;
|
|
}
|
|
|
|
:root {
|
|
scroll-behavior: smooth;
|
|
font-size: clamp(16px, 1.2vmax, 36px);
|
|
}
|
|
|
|
html, body {
|
|
height: 100%;
|
|
}
|
|
|
|
body {
|
|
--accent-color: #3042e7;
|
|
--secondary-color: #ffac2e;
|
|
--text-color: 17, 17, 17;
|
|
--text-color-light: 100, 100, 100;
|
|
--foreground-color: 255, 255, 255;
|
|
--background-color: #efefef;
|
|
--error-color: red;
|
|
color: rgba(var(--text-color), 1);
|
|
background: rgba(var(--foreground-color), 1);
|
|
}
|
|
|
|
body[data-theme=dark] {
|
|
--accent-color: #5365ff;
|
|
--secondary-color: #FDB956;
|
|
--text-color: 218, 218, 218;
|
|
--text-color-light: 170, 170, 170;
|
|
--foreground-color: 20, 20, 20;
|
|
}
|
|
body[data-theme=dark] #contacts, body[data-theme=dark] #mails {
|
|
background: rgba(var(--foreground-color), 0.5);
|
|
}
|
|
body[data-theme=dark] .initial {
|
|
background: rgba(var(--text-color), 0.1) !important;
|
|
color: rgba(var(--text-color), 1) !important;
|
|
box-shadow: 0 0.1rem 0.1rem #00000016, 0 0.1rem 0.3rem #00000040;
|
|
}
|
|
body[data-theme=dark] .message {
|
|
color: rgba(var(--text-color), 1);
|
|
}
|
|
|
|
p {
|
|
line-height: 1.6;
|
|
}
|
|
|
|
h1 {
|
|
font-size: 3rem;
|
|
}
|
|
|
|
h2 {
|
|
font-size: 2rem;
|
|
}
|
|
|
|
h3 {
|
|
font-size: 1.5rem;
|
|
}
|
|
|
|
h4 {
|
|
font-size: 1.1rem;
|
|
}
|
|
|
|
h5 {
|
|
font-size: 0.8rem;
|
|
}
|
|
|
|
h1, h2, h3, h4, h5 {
|
|
color: rgba(var(--text-color), 1);
|
|
font-family: "Poppins", sans-serif;
|
|
font-weight: 600;
|
|
}
|
|
|
|
textarea {
|
|
background: rgba(var(--text-color), 0.06);
|
|
border: none;
|
|
border-radius: 0.3rem;
|
|
width: 100%;
|
|
padding: 1rem;
|
|
font-size: 1rem;
|
|
color: rgba(var(--text-color), 1);
|
|
resize: none;
|
|
}
|
|
textarea:focus {
|
|
outline: none;
|
|
box-shadow: 0 0 0 0.1rem var(--accent-color);
|
|
}
|
|
|
|
.flex {
|
|
display: flex;
|
|
}
|
|
|
|
.grid {
|
|
display: grid;
|
|
}
|
|
|
|
.grid-2 {
|
|
grid-template-columns: auto auto;
|
|
gap: 1em;
|
|
}
|
|
|
|
.align-center {
|
|
align-items: center;
|
|
}
|
|
|
|
.justify-right {
|
|
margin-left: auto;
|
|
}
|
|
|
|
.direction-column {
|
|
flex-direction: column;
|
|
}
|
|
|
|
.rest {
|
|
flex: 1;
|
|
}
|
|
|
|
.hide {
|
|
opacity: 0;
|
|
pointer-events: none;
|
|
}
|
|
|
|
.hide-completely {
|
|
display: none !important;
|
|
}
|
|
|
|
.no-transformations {
|
|
transform: none !important;
|
|
}
|
|
|
|
.breakable {
|
|
overflow-wrap: break-word;
|
|
}
|
|
|
|
.text-overflow {
|
|
white-space: nowrap;
|
|
overflow: hidden;
|
|
text-overflow: ellipsis;
|
|
}
|
|
|
|
.sticky {
|
|
position: sticky;
|
|
top: 1rem;
|
|
}
|
|
|
|
.light-text {
|
|
color: rgba(var(--text-color-light), 1);
|
|
}
|
|
|
|
.accent-color {
|
|
color: var(--accent-color);
|
|
}
|
|
|
|
.secondary-color {
|
|
color: var(--secondary-color);
|
|
}
|
|
|
|
.fab {
|
|
box-shadow: 0 1rem 1rem #00000020;
|
|
margin-right: 1rem;
|
|
position: fixed;
|
|
bottom: 3.5rem;
|
|
right: 0;
|
|
z-index: 2;
|
|
}
|
|
.fab .icon {
|
|
margin-left: 0 !important;
|
|
margin-right: 0.5rem;
|
|
height: 0.9rem !important;
|
|
stroke-width: 8 !important;
|
|
}
|
|
|
|
a:any-link {
|
|
text-decoration: none;
|
|
color: var(--accent-color);
|
|
text-transform: capitalize;
|
|
font-weight: 500;
|
|
}
|
|
|
|
.solid-background {
|
|
background: var(--background-color) !important;
|
|
}
|
|
|
|
.normal-weight {
|
|
font-weight: normal;
|
|
}
|
|
|
|
.icon {
|
|
fill: none;
|
|
stroke-width: 6;
|
|
stroke: rgba(var(--text-color), 1);
|
|
height: 1.2rem;
|
|
width: 1.2rem;
|
|
overflow: visible;
|
|
stroke-linecap: round;
|
|
stroke-linejoin: round;
|
|
}
|
|
|
|
span.ripple {
|
|
position: absolute;
|
|
border-radius: 50%;
|
|
transform: scale(0);
|
|
background: rgba(var(--text-color), 0.2);
|
|
pointer-events: none;
|
|
}
|
|
|
|
.interact {
|
|
overflow: hidden;
|
|
cursor: pointer;
|
|
-webkit-tap-highlight-color: transparent;
|
|
}
|
|
|
|
sm-popup sm-input + sm-input {
|
|
margin-top: 1rem;
|
|
}
|
|
|
|
.popup-header {
|
|
padding: 0.5rem 1.5rem 0 1.5rem;
|
|
display: flex;
|
|
align-items: center;
|
|
width: 100%;
|
|
}
|
|
.popup-header .icon {
|
|
padding: 0.7rem;
|
|
height: 2.4rem;
|
|
width: 2.4rem;
|
|
stroke-width: 8;
|
|
transform: translateX(-0.5rem);
|
|
cursor: pointer;
|
|
-webkit-tap-highlight-color: transparent;
|
|
}
|
|
.popup-header .back {
|
|
transform: none;
|
|
}
|
|
.popup-header button,
|
|
.popup-header sm-button {
|
|
width: auto;
|
|
margin-left: auto;
|
|
}
|
|
|
|
#confirmation_popup,
|
|
#prompt {
|
|
flex-direction: column;
|
|
}
|
|
#confirmation_popup h4,
|
|
#prompt h4 {
|
|
font-weight: 500;
|
|
margin-bottom: 1.5rem;
|
|
}
|
|
#confirmation_popup .flex,
|
|
#prompt .flex {
|
|
margin-top: 1rem;
|
|
}
|
|
#confirmation_popup .flex sm-button:first-of-type,
|
|
#prompt .flex sm-button:first-of-type {
|
|
margin-right: 0.6rem;
|
|
margin-left: auto;
|
|
}
|
|
|
|
.page {
|
|
align-items: flex-start;
|
|
width: 100%;
|
|
height: 100%;
|
|
}
|
|
|
|
.card {
|
|
display: flex;
|
|
flex-direction: column;
|
|
margin: 1rem 0;
|
|
}
|
|
|
|
sm-button {
|
|
--font-family: "Poppins", sans-serif;
|
|
margin: 1rem 0;
|
|
}
|
|
sm-button .icon {
|
|
margin-right: 0.4rem;
|
|
}
|
|
|
|
sm-button[variant=primary] .icon {
|
|
align-self: center;
|
|
height: 1rem;
|
|
width: 1rem;
|
|
margin-left: 0.8rem;
|
|
stroke-width: 6;
|
|
stroke: rgba(var(--foreground-color), 1);
|
|
}
|
|
|
|
.back-button {
|
|
height: 2.4rem;
|
|
width: 2.4rem;
|
|
padding: 0.7rem;
|
|
transform: translateX(-0.6rem);
|
|
}
|
|
|
|
.logo-section {
|
|
display: flex;
|
|
position: relative;
|
|
align-items: center;
|
|
height: max-content;
|
|
margin: 0.5rem 0;
|
|
}
|
|
.logo-section h4 {
|
|
font-weight: 500;
|
|
line-height: 1;
|
|
font-size: 1rem;
|
|
}
|
|
.logo-section h5 {
|
|
color: rgba(var(--text-color), 0.7);
|
|
}
|
|
.logo-section .main-logo {
|
|
height: 1.4rem;
|
|
margin-right: 0.4rem;
|
|
fill: rgba(var(--text-color), 1);
|
|
stroke: none;
|
|
}
|
|
|
|
.select-file input[type=file] {
|
|
display: none;
|
|
}
|
|
|
|
#sign_in {
|
|
display: grid;
|
|
border-radius: 0.6rem;
|
|
width: 100%;
|
|
padding: 0 1.5rem;
|
|
height: 100%;
|
|
align-items: flex-end;
|
|
}
|
|
#sign_in .logo-section {
|
|
padding: 1.5rem;
|
|
display: flex;
|
|
}
|
|
#sign_in .title-font {
|
|
font-kerning: normal;
|
|
line-height: 1.2;
|
|
text-transform: capitalize;
|
|
font-weight: 700;
|
|
font-size: 2.5rem;
|
|
}
|
|
#sign_in .left {
|
|
display: grid;
|
|
flex-direction: column;
|
|
padding-bottom: 1.5rem;
|
|
z-index: 1;
|
|
}
|
|
#sign_in .left h4 {
|
|
color: rgba(var(--foreground-color), 1);
|
|
}
|
|
#sign_in .left sm-button {
|
|
margin-top: 3rem;
|
|
width: auto;
|
|
}
|
|
#sign_in .left sm-button:last-of-type {
|
|
margin-left: auto;
|
|
}
|
|
#sign_in .left sm-button:first-of-type:hover .icon {
|
|
transform: translateX(0.4rem);
|
|
}
|
|
#sign_in .left h3 {
|
|
margin-bottom: 1rem;
|
|
font-weight: 500;
|
|
}
|
|
#sign_in .left p {
|
|
font-weight: 500;
|
|
}
|
|
|
|
#sign_in_page {
|
|
height: 100vh;
|
|
width: 100vw;
|
|
background: rgba(var(--foreground-color), 1);
|
|
overflow: hidden;
|
|
}
|
|
|
|
.logo-section {
|
|
padding: 1.5rem;
|
|
}
|
|
|
|
#sign_in_illustration {
|
|
position: relative;
|
|
width: 100%;
|
|
}
|
|
|
|
#lock {
|
|
height: 12rem;
|
|
position: absolute;
|
|
top: -5rem;
|
|
left: 0;
|
|
}
|
|
|
|
#sign_in_popup {
|
|
position: relative;
|
|
width: 100%;
|
|
}
|
|
#sign_in_popup sm-button, #sign_in_popup sm-input {
|
|
display: flex;
|
|
min-width: 100%;
|
|
}
|
|
#sign_in_popup h4 {
|
|
margin-top: 6rem;
|
|
line-height: 0.6;
|
|
font-weight: 500;
|
|
}
|
|
#sign_in_popup h2 {
|
|
margin-bottom: 2rem;
|
|
}
|
|
#sign_in_popup p {
|
|
margin-bottom: 1rem;
|
|
}
|
|
|
|
#loading_page {
|
|
height: 100vh;
|
|
display: grid;
|
|
place-content: center;
|
|
justify-items: center;
|
|
}
|
|
#loading_page svg {
|
|
z-index: 1;
|
|
transform-origin: bottom;
|
|
height: 6rem;
|
|
width: 6rem;
|
|
animation: bounce 0.5s infinite alternate ease-in;
|
|
}
|
|
#loading_page .shadow {
|
|
margin-top: -1rem;
|
|
width: 5rem;
|
|
height: 2rem;
|
|
background: rgba(var(--text-color), 0.1);
|
|
border-radius: 50%;
|
|
animation: scale 0.5s infinite alternate ease-in;
|
|
margin-left: 1rem;
|
|
}
|
|
#loading_page h4 {
|
|
margin-top: 2rem;
|
|
}
|
|
|
|
@keyframes bounce {
|
|
0% {
|
|
transform: scaleY(1) translateY(-4rem);
|
|
}
|
|
90% {
|
|
transform: scaleY(1) translateY(0);
|
|
}
|
|
100% {
|
|
transform: scaleY(0.8);
|
|
}
|
|
}
|
|
@keyframes scale {
|
|
0% {
|
|
transform: scale(0.5);
|
|
}
|
|
90% {
|
|
transform: scale(1.05);
|
|
}
|
|
100% {
|
|
transform: scale(1);
|
|
}
|
|
}
|
|
.initial {
|
|
justify-content: center;
|
|
font-size: 1.2rem;
|
|
width: 2.4rem;
|
|
height: 2.4rem;
|
|
background: rgba(var(--foreground-color), 1);
|
|
box-shadow: 0 0.1rem 0.1rem #0000001a, 0 0.1rem 0.3rem #00000016;
|
|
border-radius: 2rem;
|
|
text-transform: uppercase;
|
|
}
|
|
|
|
.contact {
|
|
position: relative;
|
|
display: grid;
|
|
gap: 0 1rem;
|
|
grid-template-columns: auto 1fr auto;
|
|
grid-template-areas: "dp . menu" "dp . menu";
|
|
padding: 0.8rem 1rem;
|
|
align-items: center;
|
|
}
|
|
.contact:focus {
|
|
background: rgba(var(--text-color), 0.06);
|
|
outline: none;
|
|
}
|
|
.contact .initial {
|
|
grid-area: dp;
|
|
}
|
|
.contact .name {
|
|
font-size: 1rem;
|
|
font-family: "Poppins", sans-serif;
|
|
font-weight: 500;
|
|
text-transform: capitalize;
|
|
}
|
|
.contact .address {
|
|
font-family: "Poppins", sans-serif;
|
|
overflow: hidden;
|
|
white-space: nowrap;
|
|
text-overflow: ellipsis;
|
|
font-weight: 400;
|
|
color: rgba(var(--text-color), 0.8);
|
|
}
|
|
.contact sm-menu {
|
|
grid-area: menu;
|
|
}
|
|
|
|
#warn_no_encryption, .date-card {
|
|
padding: 0.4rem 0.8rem;
|
|
background: rgba(var(--text-color), 0.1);
|
|
font-weight: 500;
|
|
border-radius: 0.5rem;
|
|
color: rgba(var(--text-color), 0.8);
|
|
margin: 1rem 0;
|
|
justify-self: center;
|
|
align-self: flex-start;
|
|
}
|
|
|
|
.date-card {
|
|
align-self: center;
|
|
}
|
|
|
|
.mail-card.unread::before,
|
|
.contact.unread::before {
|
|
content: "";
|
|
position: absolute;
|
|
width: 0.2rem;
|
|
height: 100%;
|
|
top: 0;
|
|
left: 0;
|
|
background: #00C853;
|
|
}
|
|
|
|
.mail-card.unread,
|
|
.contact.unread {
|
|
overflow: hidden;
|
|
font-weight: 600;
|
|
}
|
|
.mail-card.unread h4,
|
|
.contact.unread h4 {
|
|
font-weight: 700;
|
|
}
|
|
|
|
.mail-card {
|
|
position: relative;
|
|
display: flex;
|
|
flex-direction: column;
|
|
padding: 1rem 1.5rem;
|
|
}
|
|
.mail-card .sender {
|
|
color: rgba(var(--text-color), 0.7);
|
|
overflow: hidden;
|
|
text-overflow: ellipsis;
|
|
white-space: nowrap;
|
|
margin-right: 1rem;
|
|
}
|
|
.mail-card .date {
|
|
margin-left: auto;
|
|
white-space: nowrap;
|
|
}
|
|
.mail-card .subject {
|
|
font-size: 1em;
|
|
margin-top: 0.3rem;
|
|
font-weight: 500;
|
|
}
|
|
.mail-card .description {
|
|
display: -webkit-box;
|
|
-webkit-line-clamp: 2;
|
|
-webkit-box-orient: vertical;
|
|
overflow: hidden;
|
|
font-size: 0.9em;
|
|
color: rgba(var(--text-color), 0.8);
|
|
}
|
|
|
|
@keyframes slide {
|
|
from {
|
|
opacity: 0;
|
|
transform: translateX(-1rem);
|
|
}
|
|
to {
|
|
opacity: 1;
|
|
transform: none;
|
|
}
|
|
}
|
|
#mail_container {
|
|
width: 100%;
|
|
}
|
|
|
|
.mail {
|
|
position: relative;
|
|
}
|
|
.mail:not(:first-of-type) {
|
|
margin-top: 2rem;
|
|
padding-inline-start: 1rem;
|
|
}
|
|
.mail:not(:first-of-type)::before {
|
|
content: "";
|
|
position: absolute;
|
|
left: 0;
|
|
top: 0;
|
|
width: 0.2rem;
|
|
height: 100%;
|
|
background: rgba(var(--text-color), 0.2);
|
|
}
|
|
.mail header {
|
|
align-self: start;
|
|
margin-bottom: 1rem;
|
|
padding-bottom: 0.5rem;
|
|
border-bottom: solid 1px rgba(var(--text-color), 0.2);
|
|
}
|
|
.mail header h4 {
|
|
font-weight: 500;
|
|
}
|
|
.mail header .flo-id {
|
|
font-weight: 400;
|
|
max-width: 90%;
|
|
}
|
|
.mail .mail-subject,
|
|
.mail .mail-content {
|
|
overflow-wrap: break-word;
|
|
word-wrap: break-word;
|
|
}
|
|
.mail .mail-subject {
|
|
margin-bottom: 0.4em;
|
|
}
|
|
.mail .mail-content {
|
|
height: max-content;
|
|
max-width: 60ch;
|
|
white-space: pre-wrap;
|
|
}
|
|
|
|
.logo-section {
|
|
display: grid;
|
|
grid-template-columns: auto 1fr;
|
|
grid-template-areas: "logo ." "logo .";
|
|
}
|
|
.logo-section svg {
|
|
grid-area: logo;
|
|
}
|
|
|
|
#main_navbar {
|
|
position: fixed;
|
|
bottom: 0;
|
|
padding: 0;
|
|
flex-wrap: wrap;
|
|
width: 100%;
|
|
background: rgba(var(--foreground-color), 0.9);
|
|
box-shadow: 0 -0.2rem 1rem #00000016;
|
|
height: 3.5rem;
|
|
align-items: center;
|
|
z-index: 4;
|
|
}
|
|
#main_navbar .logo-section {
|
|
padding: 0;
|
|
}
|
|
#main_navbar .navbar-item {
|
|
position: relative;
|
|
height: 100%;
|
|
flex: 1;
|
|
justify-content: center;
|
|
flex-direction: column;
|
|
opacity: 0.8;
|
|
}
|
|
#main_navbar .navbar-item .icon {
|
|
height: 1.2rem;
|
|
width: 1.2rem;
|
|
}
|
|
#main_navbar .navbar-item.badge::after {
|
|
right: 0;
|
|
top: 0;
|
|
position: absolute;
|
|
content: attr(data-notifications);
|
|
display: flex;
|
|
justify-content: center;
|
|
align-items: center;
|
|
padding: 0.4rem;
|
|
line-height: 0;
|
|
height: calc(1em + 0.4rem);
|
|
background: #00C853;
|
|
color: rgba(var(--foreground-color), 1);
|
|
border-radius: 2rem;
|
|
transition: transform 0.3s;
|
|
}
|
|
#main_navbar .navbar-item.badge.active::after, #main_navbar .navbar-item.badge[data-notifications="0"]::after, #main_navbar .navbar-item.badge[data-notifications=""]::after {
|
|
transform: scale(0);
|
|
}
|
|
#main_navbar .active {
|
|
opacity: 1;
|
|
}
|
|
#main_navbar .active h5 {
|
|
color: var(--accent-color);
|
|
}
|
|
#main_navbar .active .icon {
|
|
stroke: var(--accent-color);
|
|
}
|
|
|
|
#auto_complete_contact {
|
|
position: relative;
|
|
justify-content: flex-start;
|
|
padding-bottom: 0;
|
|
}
|
|
|
|
#mail_contact_list {
|
|
max-height: 40vh;
|
|
overflow-y: auto;
|
|
position: absolute;
|
|
top: 100%;
|
|
background: rgba(var(--foreground-color), 1);
|
|
z-index: 1;
|
|
border-radius: 0.4rem;
|
|
box-shadow: 0 0.1rem 0.1rem #00000010, 0 0.2rem 0.5rem #00000020;
|
|
width: 100%;
|
|
}
|
|
#mail_contact_list .contact {
|
|
grid-template-columns: auto 1fr;
|
|
grid-template-areas: "dp ." "dp .";
|
|
}
|
|
#mail_contact_list sm-menu {
|
|
display: none;
|
|
}
|
|
|
|
#contacts {
|
|
position: relative;
|
|
}
|
|
#contacts header {
|
|
position: relative;
|
|
gap: 0.5rem;
|
|
}
|
|
#contacts header sm-input {
|
|
margin: 0;
|
|
width: 100%;
|
|
}
|
|
#contacts header sm-input .icon {
|
|
stroke: rgba(var(--text-color), 0.5);
|
|
height: 0.9rem;
|
|
width: 0.9rem;
|
|
}
|
|
#contacts header sm-input::part(input) {
|
|
padding: 0.4rem 1rem;
|
|
}
|
|
#contacts #all_contacts {
|
|
position: absolute;
|
|
top: 0;
|
|
bottom: 0;
|
|
left: 0;
|
|
right: 0;
|
|
height: 100%;
|
|
width: 100%;
|
|
z-index: 1;
|
|
background-color: rgba(var(--foreground-color), 1);
|
|
transition: transform 0.3s;
|
|
transform: translateX(-100%);
|
|
}
|
|
#contacts #all_contacts .back {
|
|
padding: 0.7rem;
|
|
height: 2.4rem;
|
|
width: 2.4rem;
|
|
margin-left: -0.6rem;
|
|
cursor: pointer;
|
|
}
|
|
|
|
#contacts, #mails {
|
|
position: relative;
|
|
grid-template-rows: max-content 1fr;
|
|
height: calc(100vh - 3.5rem);
|
|
backdrop-filter: blur(0.4rem);
|
|
}
|
|
#contacts header, #mails header {
|
|
padding: 1rem 1.5rem;
|
|
}
|
|
#contacts header h4, #mails header h4 {
|
|
text-transform: uppercase;
|
|
font-size: 0.8rem;
|
|
letter-spacing: 0.06em;
|
|
}
|
|
#contacts header .grid, #mails header .grid {
|
|
grid-template-columns: 1fr auto auto auto;
|
|
gap: 0.5rem;
|
|
}
|
|
#contacts header .grid .icon, #mails header .grid .icon {
|
|
height: 2.2rem;
|
|
width: 2.2rem;
|
|
padding: 0.4rem;
|
|
cursor: pointer;
|
|
}
|
|
#contacts header sm-button, #mails header sm-button {
|
|
margin: 0 0 0 auto;
|
|
}
|
|
#contacts header sm-button .icon, #mails header sm-button .icon {
|
|
height: 0.9rem;
|
|
width: 0.9rem;
|
|
align-self: center;
|
|
stroke-width: 8;
|
|
margin-left: 0;
|
|
margin-right: 0.5rem;
|
|
}
|
|
|
|
#chat_page {
|
|
overflow-y: hidden;
|
|
}
|
|
|
|
#chat {
|
|
height: 100vh;
|
|
grid-template-rows: max-content 1fr max-content;
|
|
}
|
|
#chat header {
|
|
padding: 0.5rem 1rem;
|
|
box-shadow: 0 0.2rem 0.4rem #00000016;
|
|
}
|
|
#chat header .back-button {
|
|
margin-right: 0.2rem;
|
|
}
|
|
#chat header .initial {
|
|
margin-right: 1rem;
|
|
}
|
|
#chat header h4 {
|
|
font-weight: 500;
|
|
opacity: 0.8;
|
|
}
|
|
#chat header h5 {
|
|
opacity: 0.7;
|
|
font-weight: 400;
|
|
}
|
|
#chat header sm-menu {
|
|
margin-left: 1rem;
|
|
}
|
|
#chat footer .flex {
|
|
align-items: flex-end;
|
|
padding: 0.5rem 1rem;
|
|
}
|
|
#chat footer sm-textarea::part(textarea) {
|
|
background: rgba(var(--text-color), 0.1);
|
|
padding-right: 3rem;
|
|
}
|
|
#chat #send_message_button {
|
|
position: absolute;
|
|
right: 1.5rem;
|
|
transform: scale(0);
|
|
z-index: 1;
|
|
align-self: center;
|
|
height: 2.4rem;
|
|
width: 2.4rem;
|
|
padding: 0.5rem;
|
|
cursor: pointer;
|
|
stroke: none;
|
|
fill: rgba(var(--text-color), 0.4);
|
|
margin-left: 1rem;
|
|
transition: 0.3s;
|
|
}
|
|
#chat #send_message_button.active {
|
|
fill: var(--accent-color);
|
|
transform: none;
|
|
}
|
|
#chat #type_message {
|
|
margin: 0;
|
|
}
|
|
#chat .message {
|
|
position: relative;
|
|
display: grid;
|
|
grid-auto-flow: column;
|
|
align-items: center;
|
|
gap: 0.5rem;
|
|
width: 100%;
|
|
font-size: 0.9rem;
|
|
max-width: max-content;
|
|
margin-bottom: 0.2rem;
|
|
margin-top: 0.8rem;
|
|
}
|
|
#chat .message .message-body {
|
|
overflow-wrap: break-word;
|
|
word-wrap: break-word;
|
|
white-space: pre-wrap;
|
|
box-shadow: 0 1px 0.1rem #00000020;
|
|
padding: 0.6em 1em;
|
|
}
|
|
#chat .message .time {
|
|
font-size: 0.8em;
|
|
opacity: 0.8;
|
|
margin-top: 0.3rem;
|
|
}
|
|
#chat .sent {
|
|
margin-left: auto;
|
|
}
|
|
#chat .sent::after {
|
|
content: "";
|
|
position: absolute;
|
|
left: 100%;
|
|
top: 0;
|
|
width: 0;
|
|
height: 0;
|
|
border-style: solid;
|
|
border-width: 0.5em 0.3em 0 0;
|
|
border-color: var(--accent-color) transparent transparent transparent;
|
|
}
|
|
#chat .sent .message-body {
|
|
background: var(--accent-color);
|
|
color: #f0f0f0;
|
|
border-radius: 0.4em 0 0.4em 0.4em;
|
|
}
|
|
#chat .sent .time {
|
|
grid-column: 1;
|
|
}
|
|
#chat .received::after {
|
|
content: "";
|
|
position: absolute;
|
|
left: -0.5em;
|
|
top: 0;
|
|
width: 0;
|
|
height: 0;
|
|
border-style: solid;
|
|
border-width: 0 0.5em 0.5em 0;
|
|
border-color: transparent rgba(var(--text-color), 0.1) transparent transparent;
|
|
}
|
|
#chat .received .message-body {
|
|
background: rgba(var(--text-color), 0.1);
|
|
border-radius: 0 0.4em 0.4em 0.4em;
|
|
}
|
|
#chat .sent + .sent,
|
|
#chat .received + .received {
|
|
margin-top: 0;
|
|
}
|
|
#chat .sent + .sent::after,
|
|
#chat .received + .received::after {
|
|
display: none;
|
|
}
|
|
#chat .sent + .sent .message-body,
|
|
#chat .received + .received .message-body {
|
|
border-radius: 0.4em;
|
|
}
|
|
#chat .unconfirmed {
|
|
opacity: 0.7;
|
|
}
|
|
|
|
#chat_container {
|
|
padding: 0 1rem;
|
|
margin-bottom: 1rem;
|
|
}
|
|
|
|
#new_conversation, #no_mails {
|
|
height: 100%;
|
|
justify-content: center;
|
|
text-align: center;
|
|
padding: 1.5rem;
|
|
}
|
|
#new_conversation p, #no_mails p {
|
|
margin-top: 0.8rem;
|
|
}
|
|
|
|
#no_mails .new-conversation {
|
|
height: 7rem;
|
|
margin-bottom: 1rem;
|
|
}
|
|
|
|
.new-conversation {
|
|
height: 8rem;
|
|
width: 8rem;
|
|
align-self: center;
|
|
stroke-width: 16;
|
|
stroke: rgba(var(--text-color), 0.4);
|
|
}
|
|
|
|
#contacts_container,
|
|
#chat_container,
|
|
#inbox_mail_container,
|
|
#sent_mail_container,
|
|
#mail {
|
|
width: 100%;
|
|
flex-direction: column;
|
|
height: 100%;
|
|
overflow-y: auto;
|
|
}
|
|
|
|
#contacts_container:empty {
|
|
display: none;
|
|
}
|
|
|
|
#contacts_container:not(:empty) ~ .empty-state {
|
|
display: none;
|
|
}
|
|
|
|
sm-tab-panels {
|
|
overflow: hidden auto;
|
|
}
|
|
|
|
sm-tab-header {
|
|
--accent-color: rgba(var(--text-color), 0.7);
|
|
}
|
|
|
|
#inbox_mail_container,
|
|
#sent_mail_container {
|
|
padding-bottom: 6rem;
|
|
}
|
|
|
|
#chat, #mail {
|
|
background: rgba(var(--foreground-color), 1);
|
|
}
|
|
|
|
#mail {
|
|
height: 100vh;
|
|
padding: 1.5rem;
|
|
align-items: flex-start;
|
|
}
|
|
#mail .flex {
|
|
margin-top: 1rem;
|
|
}
|
|
#mail .flex sm-button:first-of-type {
|
|
margin-right: 0.5rem;
|
|
}
|
|
|
|
#compose_mail_popup sm-input {
|
|
margin-bottom: 1rem;
|
|
}
|
|
|
|
#settings_page {
|
|
height: calc(100vh - 3.5rem);
|
|
overflow-y: auto;
|
|
padding: 1.5rem;
|
|
}
|
|
#settings_page h4 {
|
|
margin-bottom: 0.3rem;
|
|
text-transform: capitalize;
|
|
}
|
|
#settings_page h4:not(:first-of-type) {
|
|
margin-top: 1.5rem;
|
|
}
|
|
#settings_page p {
|
|
max-width: 60ch;
|
|
}
|
|
#settings_page header {
|
|
margin-bottom: 1.5rem;
|
|
}
|
|
#settings_page .flex sm-button {
|
|
margin: 0;
|
|
margin-left: 1rem;
|
|
}
|
|
#settings_page sm-switch {
|
|
padding-left: 1rem;
|
|
}
|
|
#settings_page sm-button {
|
|
width: 100%;
|
|
}
|
|
|
|
@media screen and (max-width: 640px) {
|
|
.hide-on-mobile {
|
|
position: fixed;
|
|
max-height: 0;
|
|
opacity: 0;
|
|
pointer-events: none;
|
|
}
|
|
|
|
#sign_in {
|
|
grid-template-areas: "illustration" ".";
|
|
height: 100%;
|
|
}
|
|
|
|
#sign_in_illustration {
|
|
grid-area: illustration;
|
|
}
|
|
|
|
#chat header h5 {
|
|
width: calc(100vw - 12rem);
|
|
}
|
|
#chat .message {
|
|
width: fit-content;
|
|
max-width: 90%;
|
|
}
|
|
|
|
#settings_page {
|
|
padding-bottom: 3.5rem;
|
|
}
|
|
}
|
|
@media only screen and (min-width: 640px) {
|
|
::-webkit-scrollbar {
|
|
width: 0.5rem;
|
|
}
|
|
|
|
::-webkit-scrollbar-thumb {
|
|
background: rgba(var(--text-color), 0.2);
|
|
}
|
|
::-webkit-scrollbar-thumb:hover {
|
|
background: rgba(var(--text-color), 0.5);
|
|
}
|
|
|
|
.hide-on-desktop {
|
|
display: none !important;
|
|
}
|
|
|
|
.page {
|
|
padding-bottom: 0;
|
|
}
|
|
|
|
.fab {
|
|
position: absolute;
|
|
bottom: 0;
|
|
}
|
|
|
|
.logo-section {
|
|
padding: 2rem 3rem;
|
|
margin: 0;
|
|
}
|
|
|
|
#sign_in {
|
|
align-items: center;
|
|
gap: 4vw;
|
|
grid-template-columns: 1.2fr 1fr;
|
|
padding: 0 4vw;
|
|
}
|
|
#sign_in .left sm-button:last-of-type {
|
|
margin-left: 0.5rem;
|
|
}
|
|
#sign_in .left h4 {
|
|
color: var(--accent-color);
|
|
}
|
|
|
|
#sign_in_popup .icon {
|
|
width: 1.2rem;
|
|
height: 1.2rem;
|
|
cursor: pointer;
|
|
}
|
|
|
|
#main_navbar {
|
|
flex-direction: column;
|
|
position: relative;
|
|
padding: 0.5rem;
|
|
box-shadow: none;
|
|
height: auto;
|
|
background: #111;
|
|
color: #f0f0f0;
|
|
}
|
|
#main_navbar .navbar-item {
|
|
height: auto;
|
|
justify-content: flex-start;
|
|
flex-direction: row;
|
|
flex: none;
|
|
padding: 1rem 0.5rem;
|
|
border-radius: 0.4rem;
|
|
color: #f0f0f0;
|
|
}
|
|
#main_navbar .navbar-item .icon {
|
|
height: 1.2rem;
|
|
width: 2.4rem;
|
|
}
|
|
#main_navbar .navbar-item .label {
|
|
color: #f0f0f0;
|
|
}
|
|
#main_navbar .navbar-item .icon {
|
|
stroke: #f0f0f0;
|
|
}
|
|
#main_navbar .logo-section {
|
|
padding: 0 1rem;
|
|
}
|
|
#main_navbar .logo-section .main-logo {
|
|
fill: #f0f0f0;
|
|
}
|
|
#main_navbar .logo-section .label {
|
|
color: #f0f0f0;
|
|
}
|
|
#main_navbar .active {
|
|
background: var(--accent-color);
|
|
border-radius: 0.4rem;
|
|
}
|
|
#main_navbar .label {
|
|
display: none;
|
|
}
|
|
|
|
#add_contact_popup::part(popup) {
|
|
min-width: 24rem;
|
|
}
|
|
|
|
#compose_mail_popup::part(popup),
|
|
#reply_mail_popup::part(popup) {
|
|
min-width: 36rem;
|
|
}
|
|
|
|
#main {
|
|
width: 100vw;
|
|
height: 100vh;
|
|
grid-template-columns: auto 1fr;
|
|
}
|
|
|
|
#chat .message .message-body {
|
|
max-width: 50ch;
|
|
}
|
|
|
|
.contact,
|
|
.mail-card {
|
|
margin: 0.25rem 0.5rem;
|
|
border-radius: 0.5rem;
|
|
}
|
|
|
|
#chat_page, #mail_page {
|
|
grid-template-columns: 20rem 1fr;
|
|
}
|
|
|
|
#contacts, #mails {
|
|
height: 100vh;
|
|
border-right: 1px solid rgba(var(--text-color), 0.2);
|
|
}
|
|
|
|
#settings_page {
|
|
height: 100vh;
|
|
}
|
|
#settings_page section {
|
|
display: grid;
|
|
grid-template-columns: 1fr 1fr;
|
|
gap: 3rem;
|
|
grid-auto-flow: column;
|
|
}
|
|
#settings_page sm-button {
|
|
width: max-content;
|
|
}
|
|
|
|
.contact.active,
|
|
.mail-card.active {
|
|
background: rgba(var(--text-color), 0.06);
|
|
}
|
|
|
|
.card {
|
|
display: inline-flex;
|
|
width: auto;
|
|
}
|
|
}
|
|
@media only screen and (min-width: 1280px) {
|
|
#sign_in {
|
|
gap: 4vw;
|
|
padding: 0 12vw;
|
|
}
|
|
#sign_in .title-font {
|
|
font-size: 3rem;
|
|
}
|
|
|
|
#main_navbar {
|
|
align-items: flex-start;
|
|
}
|
|
#main_navbar .navbar-item {
|
|
padding: 1rem 0.8rem;
|
|
width: 100%;
|
|
}
|
|
#main_navbar .navbar-item .icon {
|
|
width: 2rem;
|
|
margin-right: 0.8rem;
|
|
}
|
|
#main_navbar .label {
|
|
display: block;
|
|
}
|
|
|
|
#chat_page, #mail_page {
|
|
grid-template-columns: 22rem 1fr;
|
|
}
|
|
|
|
#chat header {
|
|
padding: 0.5rem 1.5rem;
|
|
}
|
|
#chat #chat_container {
|
|
padding: 1rem 1.5rem;
|
|
}
|
|
}
|
|
@media (hover: hover) {
|
|
.contact:hover, .mail-card:hover, .navbar-item:hover {
|
|
background: rgba(var(--text-color), 0.06);
|
|
cursor: pointer;
|
|
}
|
|
|
|
.contact sm-menu {
|
|
opacity: 0;
|
|
transition: opacity 0.3s;
|
|
}
|
|
|
|
.contact:hover sm-menu,
|
|
sm-menu:focus-within {
|
|
opacity: 1;
|
|
}
|
|
} |