326 lines
6.8 KiB
CSS
326 lines
6.8 KiB
CSS
/* src/base.css */
|
|
#home-page {
|
|
--background-transparent: hsla(0, 0%, 100%, 40%);
|
|
--surface: hsla(0, 0%, 100%, 40%);
|
|
--surface-hover: hsla(0, 0%, 91%, 40%);
|
|
--surface-active: hsla(0, 0%, 78%, 40%);
|
|
}
|
|
@media (display-mode: browser) and (prefers-color-scheme: dark) {
|
|
#home-page {
|
|
--background-transparent: hsla(0, 0%, 5%, 30%);
|
|
--surface: hsla(0, 0%, 5%, 30%);
|
|
--surface-hover: hsla(0, 0%, 20%, 30%);
|
|
--surface-active: hsla(0, 0%, 44%, 30%);
|
|
}
|
|
}
|
|
#background {
|
|
position: fixed;
|
|
top: 0px;
|
|
left: var(--safe-area-left);
|
|
right: var(--safe-area-right);
|
|
bottom: 0px;
|
|
z-index: 1;
|
|
pointer-events: none;
|
|
overflow: hidden;
|
|
opacity: 0.2;
|
|
}
|
|
main {
|
|
z-index: 2;
|
|
}
|
|
#background::after,
|
|
#background::before {
|
|
content: "";
|
|
position: absolute;
|
|
z-index: -1;
|
|
pointer-events: none;
|
|
filter: blur(60px);
|
|
}
|
|
@media (prefers-color-scheme: dark) {
|
|
#background {
|
|
background-image:
|
|
linear-gradient(
|
|
120deg,
|
|
hsla(210, 100%, 50%, 60%),
|
|
hsla(210, 100%, 50%, 55%),
|
|
transparent 60%);
|
|
}
|
|
}
|
|
@media (display-mode: standalone) {
|
|
@media (prefers-color-scheme: dark) {
|
|
#background {
|
|
background-image:
|
|
linear-gradient(
|
|
120deg,
|
|
hsla(210, 100%, 50%, 80%),
|
|
hsla(210, 100%, 50%, 75%),
|
|
transparent 60%);
|
|
}
|
|
}
|
|
}
|
|
@media (prefers-color-scheme: light) {
|
|
#background {
|
|
background-image:
|
|
linear-gradient(
|
|
120deg,
|
|
hsla(210, 100%, 50%, 60%),
|
|
hsla(210, 100%, 50%, 30%));
|
|
}
|
|
#background::before {
|
|
top: -130%;
|
|
left: -150%;
|
|
right: -800%;
|
|
bottom: -20%;
|
|
background-image:
|
|
radial-gradient(
|
|
transparent 60%,
|
|
hsla(110, 100%, 40%, 50%) 60%,
|
|
hsla(110, 100%, 20%, 40%));
|
|
}
|
|
#background::after {
|
|
top: -100%;
|
|
left: 0%;
|
|
right: -500%;
|
|
bottom: -50%;
|
|
background-image:
|
|
radial-gradient(
|
|
transparent 70%,
|
|
hsla(110, 100%, 30%, 90%) 70%,
|
|
hsla(110, 100%, 10%, 70%));
|
|
}
|
|
}
|
|
|
|
/* src/colors.css */
|
|
[color]:not([color=standard]) {
|
|
--primary: hsl(var(--hue), 100%, var(--accent-luma));
|
|
--link: hsl(var(--hue), 100%, var(--accent-luma));
|
|
}
|
|
@media (prefers-color-scheme: dark) {
|
|
[color]:not([color=standard]) {
|
|
--accent-luma: var(--accent-luma-dark);
|
|
}
|
|
}
|
|
[color]:not([color=standard]).tile {
|
|
--gradient-luma-1: 70%;
|
|
--gradient-luma-2: 90%;
|
|
--hover-luma: 75%;
|
|
--active-luma: 80%;
|
|
--text-luma: 20%;
|
|
--surface:
|
|
linear-gradient(
|
|
|
|
120deg,
|
|
hsl(var(--hue), 100%, var(--gradient-luma-1)),
|
|
hsl(var(--hue), 100%, var(--gradient-luma-2)) );
|
|
--surface-hover: hsl(var(--hue), 100%, var(--hover-luma));
|
|
--surface-active: hsl(var(--hue), 100%, var(--active-luma));
|
|
--text-normal: hsl(var(--hue), 100%, var(--text-luma));
|
|
}
|
|
@media (prefers-color-scheme: dark) {
|
|
[color]:not([color=standard]).tile {
|
|
--gradient-luma-1: 20%;
|
|
--gradient-luma-2: 15%;
|
|
--hover-luma: 25%;
|
|
--active-luma: 30%;
|
|
--text-luma: 90%;
|
|
}
|
|
}
|
|
[color]:not([color=standard]).fill-color {
|
|
color: white;
|
|
background-color: var(--primary);
|
|
}
|
|
[color]:not([color=standard])[selected].fill-color {
|
|
color: var(--primary);
|
|
background-color: var(--surface);
|
|
}
|
|
[color=coral] {
|
|
--hue: 20;
|
|
--accent-luma: 50%;
|
|
--accent-luma-dark: 70%;
|
|
}
|
|
[color=yellow] {
|
|
--hue: 50;
|
|
--accent-luma: 50%;
|
|
--accent-luma-dark: 60%;
|
|
}
|
|
[color=mint] {
|
|
--hue: 150;
|
|
--accent-luma: 40%;
|
|
--accent-luma-dark: 60%;
|
|
}
|
|
[color=lightblue] {
|
|
--hue: 180;
|
|
--accent-luma: 40%;
|
|
--accent-luma-dark: 60%;
|
|
}
|
|
[color=blue] {
|
|
--hue: 220;
|
|
--accent-luma: 50%;
|
|
--accent-luma-dark: 70%;
|
|
}
|
|
[color=purple] {
|
|
--hue: 280;
|
|
--accent-luma: 50%;
|
|
--accent-luma-dark: 70%;
|
|
}
|
|
|
|
/* src/View/chatPage.css */
|
|
#chat-page-wrapper {
|
|
display: none;
|
|
}
|
|
#chat-page-wrapper[open] {
|
|
display: flex;
|
|
position: absolute;
|
|
top: 0px;
|
|
left: 0px;
|
|
right: 0px;
|
|
bottom: 0px;
|
|
background-color: var(--background);
|
|
z-index: 2;
|
|
}
|
|
#chat-page {
|
|
--ribbon-size: calc(var(--control-height) + 2 * var(--gap-between-tiles));
|
|
}
|
|
#chat-page #ribbon,
|
|
#chat-page .toolbar,
|
|
#chat-page #main,
|
|
#chat-page #main .content {
|
|
display: flex;
|
|
}
|
|
#chat-page > div {
|
|
padding: 0px;
|
|
overflow: hidden;
|
|
display: flex;
|
|
}
|
|
#chat-page #main {
|
|
display: flex;
|
|
flex-direction: column;
|
|
width: 100%;
|
|
height: 100%;
|
|
flex: 1;
|
|
}
|
|
#chat-page #main > div,
|
|
#chat-page #main .content {
|
|
width: 100%;
|
|
height: 100%;
|
|
}
|
|
#chat-page #main .content {
|
|
overflow: auto;
|
|
padding: var(--content-padding);
|
|
}
|
|
#chat-page #ribbon,
|
|
#chat-page #main,
|
|
#chat-page #main .content {
|
|
flex-direction: column;
|
|
}
|
|
#chat-page #ribbon {
|
|
width: var(--ribbon-size);
|
|
border-right: 1px solid var(--border);
|
|
overflow: auto;
|
|
justify-content: space-between;
|
|
}
|
|
#chat-page #main .toolbar {
|
|
height: var(--ribbon-size);
|
|
border-bottom: 1px solid var(--border);
|
|
overflow-x: auto;
|
|
padding-left: var(--content-padding);
|
|
}
|
|
#chat-page #ribbon,
|
|
#chat-page .toolbar {
|
|
align-items: center;
|
|
}
|
|
#chat-page #ribbon > span,
|
|
#chat-page .toolbar > span {
|
|
display: flex;
|
|
flex-direction: column;
|
|
padding: var(--gap-between-tiles);
|
|
gap: var(--gap-between-tiles);
|
|
}
|
|
#chat-page #ribbon > span {
|
|
width: 100%;
|
|
}
|
|
#chat-page #ribbon button,
|
|
#chat-page .toolbar button {
|
|
padding: 0px;
|
|
width: 100%;
|
|
max-width: var(--control-height);
|
|
height: var(--control-height);
|
|
align-items: center;
|
|
justify-content: center;
|
|
}
|
|
|
|
/* src/View/homePage.css */
|
|
#home-page > div {
|
|
display: flex;
|
|
flex-direction: row;
|
|
gap: var(--large-gap);
|
|
scroll-snap-type: x mandatory;
|
|
scroll-behavior: smooth;
|
|
overflow: hidden;
|
|
overflow-x: scroll;
|
|
padding: 0px;
|
|
}
|
|
#home-page > div > div {
|
|
display: flex;
|
|
flex-direction: column;
|
|
justify-content: start;
|
|
gap: var(--gap-between-tiles);
|
|
padding: var(--content-padding);
|
|
padding-top: calc(var(--header-height) + var(--content-margin));
|
|
width: 100%;
|
|
min-width: 100%;
|
|
height: 100%;
|
|
overflow: scroll;
|
|
scroll-snap-align: center;
|
|
}
|
|
#home-page #chat-grid {
|
|
margin-top: var(--content-padding);
|
|
display: grid;
|
|
gap: var(--gap-between-tiles);
|
|
grid-template-columns: repeat(auto-fill, minmax(12rem, 1fr));
|
|
}
|
|
@media (min-width: 640px) {
|
|
#home-page #overview-section {
|
|
width: 20rem;
|
|
min-width: 20rem;
|
|
}
|
|
#home-page #chat-section {
|
|
flex: 1;
|
|
min-width: unset;
|
|
}
|
|
}
|
|
@media (min-width: 1200px) {
|
|
#home-page #overview-section,
|
|
#home-page #chat-section {
|
|
padding-left: 3rem;
|
|
padding-right: 3rem;
|
|
}
|
|
#home-page #chat-grid {
|
|
margin-top: 3rem;
|
|
}
|
|
#home-page #overview-section {
|
|
width: var(--max-input-width);
|
|
min-width: var(--max-input-width);
|
|
}
|
|
}
|
|
|
|
/* src/View/Components/chatEntry.css */
|
|
.chat-entry {
|
|
position: relative;
|
|
display: flex;
|
|
align-items: flex-end !important;
|
|
justify-content: start;
|
|
height: 8rem;
|
|
overflow: hidden;
|
|
}
|
|
.chat-entry h2 {
|
|
margin: 0px;
|
|
}
|
|
.chat-entry .shadow {
|
|
position: absolute;
|
|
left: -15px;
|
|
bottom: -45px;
|
|
font-size: 6rem;
|
|
opacity: 0.1;
|
|
white-space: nowrap;
|
|
}
|