Files
CT/dist/index.css
T

1091 lines
27 KiB
CSS
Raw Normal View History

2024-07-20 18:10:42 +02:00
/* src/colors.css */
2026-09-05 02:36:46 +02:00
[color]:not([color=standard]) {
--primary: hsl(var(--hue), 100%, var(--accent-luma));
--primary-hover: hsl(var(--hue), 95%, var(--accent-luma));
--primary-active: hsl(var(--hue), 80%, var(--accent-luma));
--text-on-color: hsl(0, 0%, var(--accent-text-luma));
--link: hsl(var(--hue), 100%, var(--accent-luma));
--surface: hsla(var(--hue), 80%, 30%, 5%);
--surface-hover: hsla(var(--hue), 100%, 5%, 10%);
--surface-active: hsla(var(--hue), 100%, 5%, 15%);
}
2026-09-25 14:32:45 +02:00
body:is([theme=dark], [theme=black]) [color]:not([color=standard]) {
2026-09-05 02:36:46 +02:00
--accent-luma: var(--accent-luma-dark);
--accent-text-luma: var(--accent-text-luma-dark);
--surface: hsla(var(--hue), 100%, 95%, 5%);
--surface-hover: hsla(var(--hue), 100%, 95%, 10%);
--surface-active: hsla(var(--hue), 100%, 95%, 15%);
}
[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)),
hsla(var(--hue), 100%, var(--gradient-luma-2), 40%) );
--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));
}
2026-09-25 14:32:45 +02:00
body:is([theme=dark], [theme=black]) [color]:not([color=standard]).tile {
2026-09-05 02:36:46 +02:00
--gradient-luma-1: 20%;
--gradient-luma-2: 15%;
--hover-luma: 25%;
--active-luma: 30%;
--text-luma: 90%;
--surface:
linear-gradient(
120deg,
hsl(var(--hue), 100%, var(--gradient-luma-1)),
hsla(var(--hue), 100%, var(--gradient-luma-2), 40%) );
--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));
}
[color]:not([color=standard]).fill-color {
color: white;
background-color: var(--primary);
}
[color]:not([color=standard])[selected].fill-color {
color: var(--primary);
2024-07-20 18:26:11 +02:00
}
2024-07-23 19:00:28 +02:00
@media (min-width: 1024px) {
2026-09-05 02:36:46 +02:00
[color]:not([color=standard]).background {
--luma: var(--background-luma);
--sat: 100%;
2026-09-25 17:22:49 +02:00
background: hsl(var(--hue), var(--sat), var(--luma), 40%);
2026-09-05 02:36:46 +02:00
}
2026-09-25 14:32:45 +02:00
body:is([theme=dark], [theme=black]) [color]:not([color=standard]).background {
2026-09-05 02:36:46 +02:00
--luma: var(--background-luma-dark);
}
[color=standard].background {
background: var(--surface);
}
}
2026-09-26 01:49:55 +02:00
body [color] :is(.background-primary, .primary) hr {
--border: hsla(0, 0%, var(--accent-text-luma), 10%);
}
2026-09-25 14:32:45 +02:00
body [color]:not([color=standard]).subtle-background {
2026-09-05 02:36:46 +02:00
--luma: var(--subtle-luma);
2026-09-25 17:22:49 +02:00
background: hsl(var(--hue), 100%, var(--luma), 40%);
2026-09-05 02:36:46 +02:00
}
2026-09-25 14:32:45 +02:00
body:is([theme=dark], [theme=black]) [color]:not([color=standard]).subtle-background {
2026-09-05 02:36:46 +02:00
--luma: var(--subtle-luma-dark);
}
2026-09-25 14:32:45 +02:00
body[theme=black] * {
--subtle-luma: black !important;
--subtle-luma-dark: black !important;
}
2026-09-05 02:36:46 +02:00
[color=coral] {
--hue: 20;
--accent-luma: 50%;
--accent-luma-dark: 70%;
--accent-text-luma: 100%;
--accent-text-luma-dark: 100%;
--background-luma: 90%;
--background-luma-dark: 11%;
--subtle-luma: 95%;
--subtle-luma-dark: 5%;
}
[color=yellow] {
2026-09-25 17:22:49 +02:00
--hue: 60;
--accent-luma: 60%;
2026-09-05 02:36:46 +02:00
--accent-luma-dark: 60%;
--accent-text-luma: 0%;
--accent-text-luma-dark: 0%;
--background-luma: 85%;
--background-luma-dark: 11%;
--subtle-luma: 95%;
--subtle-luma-dark: 5%;
}
[color=green] {
--hue: 120;
--accent-luma: 40%;
--accent-luma-dark: 60%;
--accent-text-luma: 100%;
--accent-text-luma-dark: 0%;
--background-luma: 85%;
--background-luma-dark: 12%;
--subtle-luma: 95%;
--subtle-luma-dark: 5%;
}
[color=lightblue] {
--hue: 180;
--accent-luma: 40%;
--accent-luma-dark: 60%;
--accent-text-luma: 0%;
--accent-text-luma-dark: 0%;
--background-luma: 85%;
--background-luma-dark: 12%;
--subtle-luma: 95%;
--subtle-luma-dark: 5%;
}
[color=blue] {
--hue: 220;
--accent-luma: 50%;
--accent-luma-dark: 70%;
--accent-text-luma: 100%;
--accent-text-luma-dark: 100%;
--background-luma: 90%;
--background-luma-dark: 12%;
--subtle-luma: 95%;
--subtle-luma-dark: 5%;
}
[color=purple] {
--hue: 280;
--accent-luma: 50%;
--accent-luma-dark: 70%;
--accent-text-luma: 100%;
--accent-text-luma-dark: 100%;
--background-luma: 90%;
--background-luma-dark: 11%;
--subtle-luma: 95%;
--subtle-luma-dark: 5%;
2024-07-20 18:10:42 +02:00
}
2024-07-23 00:09:39 +02:00
/* src/coloredTile.css */
.colored-tile {
2026-09-05 02:36:46 +02:00
position: relative;
display: flex;
align-items: flex-end !important;
justify-content: start;
overflow: hidden;
2024-07-23 00:09:39 +02:00
}
.colored-tile h2 {
2026-09-05 02:36:46 +02:00
margin: 0px;
2024-07-23 00:09:39 +02:00
}
.colored-tile .shadow {
2026-09-05 02:36:46 +02:00
position: absolute;
left: -15px;
bottom: -45px;
font-size: 7rem;
opacity: 0.1;
white-space: nowrap;
2024-07-23 00:09:39 +02:00
}
2026-04-18 11:55:01 +00:00
/* src/base.css */
#home-page,
#home-page #chat-section,
#chat-page,
#chat-page #main > div {
2026-09-05 02:36:46 +02:00
animation: slide-up var(--animation-duration) ease;
2026-04-18 11:55:01 +00:00
}
#background-wrapper {
2026-09-05 02:36:46 +02:00
position: fixed;
2026-09-25 14:32:45 +02:00
inset: 0px;
2026-09-05 02:36:46 +02:00
z-index: 1;
pointer-events: none;
overflow: hidden;
2026-09-24 16:39:57 +02:00
background: var(--background);
2026-04-18 11:55:01 +00:00
}
main {
2026-09-05 02:36:46 +02:00
z-index: 2;
2026-04-18 11:55:01 +00:00
}
2026-09-30 15:34:42 +02:00
#background-wrapper > div {
2026-09-05 02:36:46 +02:00
position: absolute;
2026-09-30 15:34:42 +02:00
inset: -100px;
2026-09-05 02:36:46 +02:00
z-index: -1;
pointer-events: none;
2026-09-30 22:40:31 +02:00
opacity: 0.3;
2026-09-30 15:34:42 +02:00
}
#background-wrapper > div > div {
position: absolute;
inset: 0px;
filter: blur(80px);
2026-04-18 11:55:01 +00:00
}
#background-wrapper #sky {
2026-09-05 02:36:46 +02:00
left: -100%;
bottom: -50%;
2026-09-17 20:03:55 +02:00
background-image: radial-gradient(var(--sky-1), var(--sky-2));
2026-04-18 11:55:01 +00:00
}
2026-09-18 17:40:16 +02:00
body {
transition: --sky-1 1s, --sky-2 5s;
}
2026-04-18 11:55:01 +00:00
#background-wrapper #grass-1 {
2026-09-25 17:22:49 +02:00
--color-1: hsl(104.61, 100%, 46.85%);
--color-2: hsl(37.43, 88.75%, 53.58%);
2026-09-17 20:03:55 +02:00
filter: var(--backdrop-grass-filter);
2026-09-05 02:36:46 +02:00
background-image:
linear-gradient(
350deg,
var(--color-1),
var(--color-2) 30%,
2026-09-30 15:34:42 +02:00
transparent 50%);
2026-04-18 11:55:01 +00:00
}
#background-wrapper #grass-2 {
2026-09-17 20:03:55 +02:00
--color-1: hsl(110, 60%, 40%);
--color-2: hsl(110, 60%, 35%);
filter: var(--backdrop-grass-filter);
2026-09-05 02:36:46 +02:00
background-image:
linear-gradient(
9deg,
var(--color-1),
var(--color-2) 30%,
2026-09-30 15:34:42 +02:00
transparent 45%);
2026-09-05 02:36:46 +02:00
}
2026-09-30 15:34:42 +02:00
body[theme=dark] #background-wrapper > div {
2026-09-05 02:36:46 +02:00
opacity: 0.5;
}
body[theme=dark] #background-wrapper #sky {
--color-1: hsl(188, 100%, 30%);
--color-2: hsl(194, 72%, 24%);
}
body[theme=dark] #background-wrapper #grass-1 {
--color-1: hsl(120, 30%, 30%);
--color-2: hsl(120, 30%, 24%);
}
body[theme=dark] #background-wrapper #grass-2 {
--color-1: hsl(110, 60%, 30%);
--color-2: hsl(110, 50%, 24%);
2026-04-18 11:55:01 +00:00
}
2026-09-24 15:55:47 +02:00
.zoom {
display: flex;
align-items: start;
gap: var(--large-gap);
width: auto;
height: auto;
transform-origin: center;
padding: var(--content-padding);
}
2026-09-29 22:24:34 +02:00
[ctkeystroke] {
position: relative;
}
[ctkeystroke]::after {
content: attr(ctkeystroke);
background: var(--primary);
color: var(--text-on-color);
--size: 24px;
position: absolute;
top: calc(50% - var(--size) / 2);
left: calc(50% - var(--size) / 2);
width: var(--size);
height: var(--size);
display: flex;
align-items: center;
justify-content: center;
opacity: 0;
transform: translateY(10px);
transition: all calc(var(--animation-duration) / 2);
}
body[keystroke-active] [ctkeystroke]::after {
2026-09-30 22:40:31 +02:00
opacity: 0.7;
2026-09-29 22:24:34 +02:00
transform: translateY(0px);
}
2026-04-18 11:55:01 +00:00
/* src/View/homePage.css */
2026-09-30 15:34:42 +02:00
#home-page {
overflow: auto;
padding: var(--content-padding);
min-width: unset;
max-width: 1000px;
}
#home-page > h1 {
font-size: 3rem;
font-family: IBM Plex Sans Thin;
}
2026-04-18 11:55:01 +00:00
#home-page > div {
2026-09-30 15:34:42 +02:00
position: relative;
2026-09-05 02:36:46 +02:00
display: flex;
flex-direction: row;
2026-09-30 15:34:42 +02:00
flex-wrap: wrap;
2026-09-05 02:36:46 +02:00
padding: 0px;
2026-09-30 15:34:42 +02:00
height: auto;
overflow: visible;
2026-04-18 11:55:01 +00:00
}
#home-page > div > div {
2026-09-05 02:36:46 +02:00
display: flex;
flex-direction: column;
justify-content: start;
width: 100%;
min-width: 100%;
2026-04-18 11:55:01 +00:00
}
2026-09-30 15:34:42 +02:00
#home-page #overview-section {
gap: var(--gap-between-tiles);
}
#home-page #chat-section > button {
margin-bottom: var(--gap-between-tiles);
2026-04-18 11:55:01 +00:00
}
#home-page #chat-grid {
2026-09-05 02:36:46 +02:00
display: grid;
gap: var(--gap-between-tiles);
grid-template-columns: repeat(auto-fill, minmax(12rem, 1fr));
2026-04-18 11:55:01 +00:00
}
@media (min-width: 640px) {
2026-09-05 02:36:46 +02:00
#home-page > div {
2026-09-30 15:34:42 +02:00
gap: var(--content-padding);
2026-09-05 02:36:46 +02:00
}
#home-page #overview-section {
width: 20rem;
min-width: 20rem;
}
#home-page #chat-section {
flex: 1;
min-width: unset;
}
2026-04-18 11:55:01 +00:00
}
2026-09-30 15:34:42 +02:00
@media (min-width: 1000px) {
#home-page > div {
gap: var(--large-gap);
2026-09-05 02:36:46 +02:00
}
2026-09-30 15:34:42 +02:00
#home-page > h1 {
padding-top: 3rem;
padding-bottom: 1rem;
2026-09-05 02:36:46 +02:00
}
2026-04-18 11:55:01 +00:00
}
2024-07-20 14:16:26 +02:00
/* src/View/chatPage.css */
#chat-page-wrapper {
2026-09-05 02:36:46 +02:00
display: none;
2024-07-20 14:16:26 +02:00
}
2024-07-20 23:20:57 +02:00
body[showing-chat] #home-page {
2026-09-05 02:36:46 +02:00
display: none;
2024-07-20 23:20:57 +02:00
}
body[showing-chat] #chat-page-wrapper {
2026-09-05 02:36:46 +02:00
display: flex;
position: absolute;
top: 0px;
left: 0px;
right: 0px;
bottom: 0px;
background-color: var(--background-glass);
z-index: 2;
2024-07-20 15:27:27 +02:00
}
2024-07-20 17:19:10 +02:00
#chat-page {
2026-09-05 02:36:46 +02:00
--ribbon-size: var(--control-height);
2024-07-20 17:19:10 +02:00
}
#chat-page > div,
#chat-page > div > #ribbon,
#chat-page > div > #ribbon > span,
#chat-page > div > #main,
#chat-page > div > #main > div,
#chat-page > div > #main > div > .pane-wrapper > .pane,
#chat-page > div > #main > div > .pane-wrapper > .pane > .toolbar,
#chat-page > div > #main > div > .pane-wrapper > .pane > .toolbar > span,
#chat-page > div > #main > div > .pane-wrapper > .pane > .content {
2026-09-05 02:36:46 +02:00
display: flex;
2024-07-20 17:19:10 +02:00
}
2024-07-20 15:27:27 +02:00
#chat-page > div {
2026-09-05 02:36:46 +02:00
padding: 0px;
overflow: hidden;
2024-07-20 15:27:27 +02:00
}
#chat-page > div > #main {
2026-09-05 02:36:46 +02:00
width: calc(100% - var(--ribbon-size) - 1px);
2024-07-20 15:27:27 +02:00
}
2024-07-20 17:19:10 +02:00
#chat-page #main > div,
#chat-page > div > #main > div > .pane-wrapper,
#chat-page > div > #main > div > .pane-wrapper > .pane,
#chat-page > div > #main > div > .pane-wrapper > .pane > .content {
2026-09-05 02:36:46 +02:00
width: 100%;
height: 100%;
flex: 1;
}
#chat-page > div > #main > div > .pane-wrapper,
#chat-page > div > #main > div > .pane-wrapper > .pane {
2026-09-05 02:36:46 +02:00
flex-direction: column;
scroll-snap-align: center;
min-width: 100%;
overflow: hidden;
2024-07-22 19:43:23 +02:00
}
2026-09-21 20:48:23 +02:00
@media (pointer: coarse) and (max-width: 480px) {
#chat-page > div > #main > div > .pane-wrapper > .pane {
flex-direction: column-reverse;
}
}
#chat-page > div > #main > div > .pane-wrapper > .pane:not(.side),
#chat-page > div > #main > div > .pane-wrapper > .pane:not(.side) .content {
2026-09-05 02:36:46 +02:00
animation: slide-up var(--animation-duration);
2024-07-23 02:59:06 +02:00
}
2024-07-22 19:43:23 +02:00
@media (min-width: 1024px) {
2026-09-05 02:36:46 +02:00
#chat-page > div > #main > div > .pane-wrapper {
min-width: unset;
}
#chat-page > div > #main > div > .pane-wrapper.side {
width: 18rem;
min-width: 18rem;
max-width: 18rem;
}
2024-07-22 19:43:23 +02:00
}
#chat-page > div > #main > div > .pane-wrapper > .pane > .content {
2026-09-05 02:36:46 +02:00
flex-direction: column;
overflow: auto;
padding: var(--content-padding);
2024-07-20 15:02:17 +02:00
}
#chat-page #ribbon,
2024-07-20 17:19:10 +02:00
#chat-page #main,
#chat-page #main .content {
2026-09-05 02:36:46 +02:00
flex-direction: column;
2024-07-20 17:19:10 +02:00
}
#chat-page > div > #ribbon,
#chat-page > div > #main > div > .pane-wrapper > .pane > .toolbar {
2026-09-05 02:36:46 +02:00
align-items: center;
}
2024-07-23 23:28:22 +02:00
#chat-page > div > #ribbon {
2026-09-05 02:36:46 +02:00
width: calc(var(--ribbon-size) + 1px);
border-right: 1px solid var(--border);
padding-bottom: var(--safe-area-bottom);
2024-07-23 23:28:22 +02:00
}
2024-07-23 15:25:16 +02:00
#chat-page > div > #ribbon > span,
2026-09-05 02:36:46 +02:00
#chat-page > div > #main > div > .pane-wrapper > .pane > .toolbar > span.ribbon {
gap: var(--gap-between-tiles);
padding: var(--gap-between-tiles);
}
2026-09-23 00:29:48 +02:00
@media (pointer: coarse) and (max-width: 480px) {
#chat-page > div > #ribbon #close-button {
order: 1;
}
}
#chat-page > div > #main > div > .pane-wrapper > .pane > .toolbar {
2026-09-05 02:36:46 +02:00
justify-content: start;
justify-content: space-between;
2024-07-20 16:28:00 +02:00
}
2024-07-23 02:11:25 +02:00
#chat-page > div > #ribbon > span {
2026-09-05 02:36:46 +02:00
overflow-y: auto;
flex-direction: column;
justify-content: end;
}
2026-04-01 19:00:16 +00:00
#chat-page > div > #ribbon > span.marquee {
2026-09-05 02:36:46 +02:00
height: 100%;
overflow: hidden;
position: relative;
2026-04-01 19:00:16 +00:00
}
#chat-page > div > #ribbon > span.marquee > span {
2026-09-05 02:36:46 +02:00
transform: rotate(270deg);
transform-origin: left;
position: absolute;
bottom: -10px;
left: calc(var(--control-height) / 2);
height: var(--control-height);
min-width: 100vh;
overflow: visible;
text-overflow: visible;
white-space: nowrap;
display: flex;
align-items: center;
gap: var(--gap-between-tiles);
2026-04-01 19:00:16 +00:00
}
#chat-page > div > #ribbon > span.marquee > span > * {
2026-09-05 02:36:46 +02:00
animation: slide-up var(--animation-duration);
2026-04-01 19:00:16 +00:00
}
#chat-page > div > #ribbon > .navigation-buttons {
2026-09-05 02:36:46 +02:00
min-height: calc(var(--control-height) * 4);
flex: 0;
2026-04-01 19:00:16 +00:00
}
#chat-page > div > #ribbon button,
#chat-page > div > #main > div > .pane-wrapper > .pane > .toolbar button {
2026-09-05 02:36:46 +02:00
padding: 0px;
width: var(--control-height);
max-width: var(--control-height);
height: var(--control-height);
min-height: var(--control-height);
align-items: center;
justify-content: center;
}
2024-07-23 02:11:25 +02:00
#chat-page > div > #ribbon button.ribbon-button,
2026-09-05 02:36:46 +02:00
#chat-page > div > #main > div > .pane-wrapper > .pane > .toolbar button.ribbon-button {
min-width: calc(var(--control-height) - 2 * var(--gap-between-tiles));
width: calc(var(--control-height) - 2 * var(--gap-between-tiles));
max-width: calc(var(--control-height) - 2 * var(--gap-between-tiles));
min-height: unset;
height: calc(var(--control-height) - 2 * var(--gap-between-tiles));
color: var(--primary);
2024-07-23 02:11:25 +02:00
}
2024-07-23 13:09:46 +02:00
#chat-page > div > #ribbon button > .icon,
2026-09-05 02:36:46 +02:00
#chat-page > div > #main > div > .pane-wrapper > .pane > .toolbar button > .icon {
font-size: 1.1rem;
2024-07-23 02:11:25 +02:00
}
2024-07-23 01:48:27 +02:00
#chat-page > div > #ribbon > span {
2026-09-05 02:36:46 +02:00
width: 100%;
2024-07-23 01:48:27 +02:00
}
#chat-page > div > #main > div > .pane-wrapper > .pane > .toolbar {
2026-09-05 02:36:46 +02:00
height: var(--ribbon-size);
overflow-x: auto;
padding: 0px;
2026-09-30 17:33:53 +02:00
overflow-y: hidden;
2024-07-23 02:11:25 +02:00
}
2024-07-26 03:14:55 +02:00
#chat-page > div > #main > div > .pane-wrapper > .pane > .toolbar > span {
2026-09-05 02:36:46 +02:00
display: flex;
align-items: center;
2026-09-30 17:33:53 +02:00
overflow-y: hidden;
2024-07-26 03:14:55 +02:00
}
#chat-page > div > #main > div > .pane-wrapper > .pane > .toolbar > span.title {
2026-09-05 02:36:46 +02:00
padding-left: var(--content-padding);
}
#chat-page > div > #main > div > .pane-wrapper > .pane > .toolbar :is(input, select, button) {
height: 100%;
flex: 1;
2024-07-20 19:26:13 +02:00
}
.modal.task-settings > div {
max-width: 52rem;
}
@media (min-width: 640px) {
.modal.task-settings .column-wrapper {
display: flex;
flex-direction: row;
gap: var(--content-padding);
}
.modal.task-settings .column-wrapper > .flex-column {
width: 100%;
flex: 1;
}
}
2026-09-22 21:41:28 +02:00
.modal.task-settings:not([full-description]) :is(#fullscreen-exit, #fullscreen-main) {
display: none;
}
.modal.task-settings[full-description] :is(#controls, #standard-main) {
display: none;
}
.modal.task-settings[full-description] > div {
height: 100%;
}
2024-07-20 14:16:26 +02:00
2026-04-18 11:55:01 +00:00
/* src/View/ChatPages/taskPage.css */
#chat-page > div > #main > #task-page > .pane-wrapper > .pane > .main-content {
2026-09-05 02:36:46 +02:00
width: 100%;
max-width: 100%;
padding: 0px;
overflow: hidden;
}
#chat-page > div > #main > #task-page > .pane-wrapper > .pane > .main-content > div {
animation: slide-up var(--animation-duration);
2026-04-18 11:55:01 +00:00
}
#chat-page > div > #main > #task-page .task-grid {
2026-09-05 02:36:46 +02:00
display: flex;
flex-direction: column;
gap: var(--gap-between-tiles);
padding: var(--content-padding);
2026-04-18 11:55:01 +00:00
}
2026-08-30 16:15:14 +02:00
#board-content .main-content {
2026-09-05 02:36:46 +02:00
overflow: auto;
2026-08-30 16:15:14 +02:00
}
2026-04-18 11:55:01 +00:00
#chat-page > div > #main > #task-page .kanban-board-wrapper .kanban-column,
#chat-page > div > #main > #task-page .status-grid-wrapper .status-column {
2026-09-05 02:36:46 +02:00
display: flex;
flex-direction: column;
gap: var(--gap-between-tiles);
2024-07-20 13:30:01 +02:00
}
2026-04-18 11:55:01 +00:00
#chat-page > div > #main > #task-page .property-input-wrapper {
2026-09-05 02:36:46 +02:00
display: flex;
flex-direction: row;
2024-07-26 03:14:55 +02:00
}
2026-04-18 11:55:01 +00:00
#chat-page > div > #main > #task-page .kanban-board-wrapper .kanban-column,
#chat-page > div > #main > #task-page .property-input-wrapper,
#chat-page > div > #main > #task-page .status-grid-wrapper .status-column,
#chat-page > div > #main > #task-page .status-name-row > *,
#chat-page > div > #main > #task-page .status-name-row::before {
2026-09-05 02:36:46 +02:00
width: 18rem;
min-width: 18rem;
max-width: 18rem;
2024-07-26 06:30:28 +02:00
}
2026-04-18 11:55:01 +00:00
#chat-page > div > #main > #task-page .status-name-row,
#chat-page > div > #main > #task-page .status-grid-wrapper {
2026-09-05 02:36:46 +02:00
display: flex;
gap: var(--large-gap);
2024-07-26 03:29:07 +02:00
}
2026-04-18 11:55:01 +00:00
#chat-page > div > #main > #task-page .status-page-content,
#chat-page > div > #main > #task-page .status-grid-wrapper {
2026-09-05 02:36:46 +02:00
flex-direction: column;
2024-07-26 05:32:07 +02:00
}
2026-04-18 11:55:01 +00:00
#chat-page > div > #main > #task-page .status-name-row::before {
2026-09-05 02:36:46 +02:00
content: "";
display: flex;
2024-08-27 09:58:28 -07:00
}
2026-04-18 11:55:01 +00:00
#chat-page > div > #main > #task-page .board-close-button {
2026-09-05 02:36:46 +02:00
display: none;
2024-08-27 09:58:28 -07:00
}
2026-04-18 11:55:01 +00:00
#chat-page > div > #main > #task-page .board-toggle-button {
2026-09-05 02:36:46 +02:00
display: flex;
2024-07-26 03:14:55 +02:00
}
2026-09-05 02:36:46 +02:00
#chat-page > div > #main > #task-page[isshowingboard][showingboardlist=false] #board-list {
display: none;
2024-07-26 03:29:07 +02:00
}
2026-04-18 11:55:01 +00:00
@media (min-width: 640px) {
2026-09-05 02:36:46 +02:00
#chat-page > div > #main > #task-page .task-grid {
display: grid;
grid-template-columns: repeat(auto-fill, minmax(18rem, 1fr));
}
2026-04-18 11:55:01 +00:00
}
@media (max-width: 1024px) {
2026-09-05 02:36:46 +02:00
#chat-page > div > #main > #task-page #board-list {
display: false;
}
#chat-page > div > #main > #task-page #board-content {
display: none;
}
#chat-page > div > #main > #task-page[isshowingboard] #board-list {
display: none;
}
#chat-page > div > #main > #task-page[isshowingboard] #board-content {
display: flex;
}
#chat-page > div > #main > #task-page .board-close-button {
display: flex;
}
#chat-page > div > #main > #task-page .board-toggle-button {
display: none;
}
2024-07-26 03:14:55 +02:00
}
2024-07-20 21:10:06 +02:00
/* src/View/ChatPages/messagePage.css */
2026-09-24 15:16:22 +02:00
#chat-page #main #message-page[reply-view] .toolbar .title {
padding-left: 0px;
}
2024-07-20 21:10:06 +02:00
#chat-page #main #message-page .content {
2026-09-05 02:36:46 +02:00
padding: 0px;
overflow: hidden;
display: flex;
position: relative;
}
2026-04-14 19:29:49 +00:00
#chat-page #main #message-page .content #message-container {
2026-09-05 02:36:46 +02:00
--message-container-padding: var(--control-height);
padding-bottom: calc(var(--message-container-padding) + var(--content-padding)) !important;
}
2026-09-24 02:16:25 +02:00
#chat-page #main #message-page:not([reply-view]) .content:has(.reply-preview-wrapper .reply-preview) #message-container {
2026-09-05 02:36:46 +02:00
--message-container-padding: calc( 2 * var(--control-height) + var(--gap-between-tiles) );
2024-07-20 21:10:06 +02:00
}
#message-page #message-container {
2026-09-05 02:36:46 +02:00
overflow: auto;
2024-07-20 21:10:06 +02:00
}
2026-09-23 15:16:08 +02:00
#message-page .reply-header {
width: 100%;
padding-left: var(--content-padding);
gap: var(--gap-in-controls);
display: flex;
align-items: center;
justify-content: space-between;
background: var(--surface);
}
#message-page .reply-header span {
width: 100%;
flex: 1;
}
2024-07-20 21:10:06 +02:00
#message-page #composer {
2026-09-05 02:36:46 +02:00
display: flex;
justify-content: center;
position: absolute;
bottom: 0px;
left: 0px;
right: 0px;
}
#message-page #composer input {
2026-09-05 02:36:46 +02:00
margin: 0px;
width: 100%;
max-width: unset;
flex: 1;
border-top: 1px solid var(--border);
border-left: 1px solid var(--border);
2026-04-01 08:46:10 +00:00
}
#message-page #composer .content-width-constraint {
2026-09-05 02:36:46 +02:00
display: flex;
align-items: flex-end;
justify-content: center;
flex-direction: column;
gap: var(--gap-between-tiles);
}
#message-page #composer .reply-preview-wrapper {
2026-09-05 02:36:46 +02:00
display: flex;
justify-content: flex-end;
width: 100%;
}
#message-page #composer .reply-preview-wrapper .reply-preview {
2026-09-05 02:36:46 +02:00
width: 100%;
max-width: var(--max-input-width);
display: flex;
gap: var(--gap-between-tiles);
}
#message-page #composer .reply-preview-wrapper .reply-preview > div {
2026-09-05 02:36:46 +02:00
display: flex;
align-items: center;
gap: var(--text-gap);
padding: 0px var(--content-padding);
width: calc(100% - var(--control-height) - var(--gap-between-tiles));
}
2026-04-01 08:46:10 +00:00
@media (max-width: 700px) {
2026-09-05 02:36:46 +02:00
#message-page #composer div {
width: calc(100vw - var(--control-height));
max-width: unset;
display: flex;
}
2024-07-21 01:53:25 +02:00
}
@media (min-width: 700px) {
2026-09-05 02:36:46 +02:00
#message-page #composer .content-width-constraint,
#message-page #composer .input-width-constraint {
display: flex;
justify-content: flex-end;
width: 100%;
max-width: var(--max-content-width);
}
#message-page #composer .content-width-constraint {
max-width: var(--max-content-width);
}
#message-page #composer .input-width-constraint {
max-width: var(--max-input-width);
}
2024-07-21 01:53:25 +02:00
}
2024-07-21 01:12:35 +02:00
#message-page #message-container {
2026-09-05 02:36:46 +02:00
display: flex;
flex-direction: column;
align-items: center;
padding: var(--content-padding);
gap: var(--gap-between-tiles);
height: auto;
max-height: unset;
2026-04-08 14:07:07 +00:00
}
#message-page #message-container:not([scroll-hard]) {
2026-09-05 02:36:46 +02:00
scroll-behavior: smooth;
2024-07-21 01:12:35 +02:00
}
2024-07-21 01:53:25 +02:00
.message-bubble {
2026-09-05 02:36:46 +02:00
display: flex;
flex-direction: column;
width: 100%;
max-width: var(--max-content-width);
2024-07-21 01:53:25 +02:00
}
2024-07-22 00:30:43 +02:00
.message-bubble .tile.main {
2026-09-05 02:36:46 +02:00
display: flex;
flex-direction: row;
align-items: start;
padding: 0px;
width: 100%;
max-width: var(--max-input-width);
overflow: hidden;
2024-07-21 13:13:41 +02:00
}
2024-07-22 00:30:43 +02:00
.message-bubble .tile.main .text-container {
2026-09-05 02:36:46 +02:00
display: flex;
flex-direction: column;
overflow: hidden;
width: 100%;
flex: 1;
2024-07-21 13:13:41 +02:00
}
2024-07-22 00:30:43 +02:00
.message-bubble .tile.main .button-container {
2026-09-05 02:36:46 +02:00
display: flex;
width: var(--control-height);
max-width: var(--control-height);
2024-07-21 01:53:25 +02:00
}
2024-07-22 00:30:43 +02:00
.message-bubble .tile.main button {
2026-09-05 02:36:46 +02:00
justify-content: center;
padding: 0px;
width: 100%;
--surface: transparent;
2024-07-21 13:13:41 +02:00
}
2026-04-14 13:21:57 +00:00
.message-bubble .tile.main .reply-button {
2026-09-05 02:36:46 +02:00
display: none;
2026-04-14 13:21:57 +00:00
}
.message-bubble:hover .tile.main .reply-button {
2026-09-05 02:36:46 +02:00
display: flex;
2026-04-14 13:21:57 +00:00
}
2024-07-22 00:30:43 +02:00
.message-bubble .tile.main .text-container {
2026-09-05 02:36:46 +02:00
padding: var(--control-padding);
2024-07-21 13:13:41 +02:00
}
2024-07-22 00:30:43 +02:00
.message-bubble .tile.main .timestamp,
.message-bubble .tile.main .timestamp .icon,
.message-bubble .tile.main .sender-name {
2026-09-05 02:36:46 +02:00
font-size: 0.8rem;
opacity: 0.6;
2024-07-21 01:53:25 +02:00
}
2024-07-22 00:30:43 +02:00
.message-bubble .tile.main .timestamp {
2026-09-05 02:36:46 +02:00
display: flex;
align-items: center;
gap: var(--gap-between-tiles);
}
2024-07-22 00:30:43 +02:00
.message-bubble .tile.main .timestamp .icon {
2026-09-05 02:36:46 +02:00
display: none;
}
2024-07-22 00:30:43 +02:00
.message-bubble .tile.main .sender-name {
2026-09-05 02:36:46 +02:00
font-weight: bold;
2024-07-21 01:53:25 +02:00
}
2024-07-22 00:30:43 +02:00
.message-bubble .tile.main .body {
2026-09-05 02:36:46 +02:00
word-break: break-word;
2024-07-21 03:17:40 +02:00
}
2026-04-11 19:26:13 +00:00
.modal .message-bubble .tile.main .body {
2026-09-05 02:36:46 +02:00
word-break: keep-all;
white-space: nowrap;
overflow: hidden;
text-overflow: ellipsis;
width: 100%;
2026-04-11 19:26:13 +00:00
}
2024-07-21 01:53:25 +02:00
.message-bubble[sentbyuser] {
2026-09-05 02:36:46 +02:00
justify-content: flex-end;
2024-07-21 01:53:25 +02:00
}
.message-bubble[sentbyuser] {
2026-09-05 02:36:46 +02:00
align-items: flex-end;
2024-07-21 01:53:25 +02:00
}
2024-07-22 00:30:43 +02:00
.message-bubble[sentbyuser] .tile.main,
.message-bubble[sentbyuser] .tile.main .timestamp {
2026-09-05 02:36:46 +02:00
flex-direction: row-reverse;
2024-07-21 13:13:41 +02:00
}
2024-07-22 00:30:43 +02:00
.message-bubble[sentbyuser] .tile.main .timestamp .icon {
2026-09-05 02:36:46 +02:00
display: flex;
}
2024-07-22 00:30:43 +02:00
.message-bubble[sentbyuser] .tile.main span {
2026-09-05 02:36:46 +02:00
text-align: right;
2024-07-21 01:53:25 +02:00
}
2026-09-23 15:16:08 +02:00
.message-bubble > :is(.inline-reply, .reply-link, .message-reaction-row) {
2026-09-05 02:36:46 +02:00
cursor: pointer;
display: flex;
align-items: center;
background: var(--surface-alt);
max-width: var(--max-input-width);
width: 100%;
overflow: hidden;
padding: 0px var(--control-padding);
2026-09-23 15:16:08 +02:00
}
.message-bubble > .inline-reply {
2026-09-05 02:36:46 +02:00
border-left: var(--outline-width) solid var(--primary);
2026-09-23 15:16:08 +02:00
gap: var(--text-gap);
2026-09-23 15:30:31 +02:00
height: var(--control-height);
2026-09-23 15:16:08 +02:00
}
.message-bubble > .reply-link {
gap: 5px;
2026-09-23 15:30:31 +02:00
height: var(--control-height);
2026-09-23 15:16:08 +02:00
}
2026-09-23 15:22:54 +02:00
.message-bubble > .message-reaction-row {
padding: var(--gap-between-tiles);
}
2026-09-24 02:16:25 +02:00
#message-page[reply-view] :is(.reply-link, .inline-reply, #composer .reply-preview-wrapper) {
2026-09-23 15:16:08 +02:00
display: none;
}
.message-bubble > .message-reaction-row {
2026-09-05 02:36:46 +02:00
padding: var(--gap-between-tiles);
display: none !important;
}
.message-bubble > .message-reaction-row:has(button:not([count="0"])) {
2026-09-05 02:36:46 +02:00
display: grid !important;
}
.message-bubble > .message-reaction-row button {
2026-09-05 02:36:46 +02:00
min-height: unset;
height: 100%;
width: 100%;
padding: var(--control-padding-compact);
gap: 0px;
flex: 1 !important;
animation: slide-up var(--animation-duration);
}
.message-bubble > .message-reaction-row button[count="0"] {
2026-09-05 02:36:46 +02:00
display: none;
}
.message-reaction-row {
2026-09-05 02:36:46 +02:00
grid-template-columns: repeat(3, minmax(80px, 1fr));
}
@media (min-width: 100px) {
2026-09-05 02:36:46 +02:00
.message-reaction-row {
grid-template-columns: repeat(3, minmax(80px, 1fr));
}
}
2026-04-11 21:01:23 +00:00
.grid.message-reaction-filter {
2026-09-05 02:36:46 +02:00
grid-template-columns: repeat(3, 1fr);
2026-04-11 21:01:23 +00:00
}
2024-07-20 21:10:06 +02:00
2026-04-18 11:55:01 +00:00
/* src/View/ChatPages/calendarPage.css */
2026-09-05 02:36:46 +02:00
#chat-page > div > #main > #calendar-page > .pane-wrapper > .pane > .toolbar .input-wrapper {
display: flex;
padding: var(--gap-between-tiles);
gap: var(--gap-between-tiles);
}
#chat-page > div > #main > #calendar-page > .pane-wrapper > .pane > .toolbar .input-wrapper > input {
min-height: unset;
height: calc(var(--control-height) - 2 * var(--gap-between-tiles));
appearance: textfield;
-moz-appearance: textfield;
padding-right: 0px;
2024-07-25 03:01:50 +02:00
}
2026-04-18 11:55:01 +00:00
#calendar-page .input-wrapper > input::-webkit-outer-spin-button,
#calendar-page .input-wrapper > input::-webkit-innner-spin-button {
2026-09-05 02:36:46 +02:00
appearance: none;
-webkit-appearance: none;
margin: 0px;
}
#chat-page > div > #main > #calendar-page > .pane-wrapper > .pane > .toolbar .input-wrapper > .year-input {
width: 4.4rem;
}
#chat-page > div > #main > #calendar-page > .pane-wrapper > .pane > .toolbar .input-wrapper > .month-input {
width: 3.1rem;
2026-04-18 11:55:01 +00:00
}
2026-05-05 14:04:00 +00:00
@media (max-width: 750px) {
2026-09-05 02:36:46 +02:00
#chat-page > div > #main > #calendar-page {
flex-direction: column;
}
#chat-page > div > #main > #calendar-page .grid-pane-wrapper {
border-bottom: 1px solid var(--border);
}
2026-04-18 11:55:01 +00:00
}
2026-05-05 14:04:00 +00:00
@media (max-width: 1024px) and (min-width: 750px) {
2026-09-05 02:36:46 +02:00
#chat-page > div > #main > #calendar-page .pane-wrapper {
flex: 1;
min-width: unset;
}
#chat-page > div > #main > #calendar-page .grid-pane-wrapper {
border-right: 1px solid var(--border);
}
2026-05-05 14:04:00 +00:00
}
2026-04-18 11:55:01 +00:00
/* src/View/Components/monthGrid.css */
.month-grid-wrapper {
2026-09-05 02:36:46 +02:00
display: flex;
flex-direction: column;
gap: var(--gap-between-tiles);
height: 100%;
overflow: auto;
2026-04-18 11:55:01 +00:00
}
.month-grid-wrapper .day-labels {
2026-09-05 02:36:46 +02:00
flex: 0;
padding: var(--content-padding);
padding-bottom: 0px;
2024-07-24 15:59:48 +02:00
}
2026-04-18 11:55:01 +00:00
.month-grid-wrapper > div {
2026-09-05 02:36:46 +02:00
display: grid;
gap: var(--gap-between-tiles);
grid-template-columns: repeat(7, minmax(0px, 1fr));
animation: slide-up var(--animation-duration);
2024-07-25 04:12:30 +02:00
}
2026-04-18 11:55:01 +00:00
.month-grid {
2026-09-05 02:36:46 +02:00
overflow: visible;
padding: var(--content-padding);
padding-top: 0px;
flex: 1;
grid-auto-rows: 1fr;
2024-07-25 04:12:30 +02:00
}
2026-04-18 11:55:01 +00:00
.month-grid .tile {
2026-09-05 02:36:46 +02:00
animation: slide-up var(--animation-duration);
overflow: hidden;
align-items: start;
2024-07-25 04:12:30 +02:00
}
2026-04-18 11:55:01 +00:00
.month-grid .tile[today] b {
2026-09-05 02:36:46 +02:00
color: var(--primary);
2024-07-25 04:12:30 +02:00
}
2026-04-18 11:55:01 +00:00
.month-grid .tile > div {
2026-09-05 02:36:46 +02:00
width: 100%;
height: 100%;
2024-07-25 04:12:30 +02:00
}
2026-04-18 11:55:01 +00:00
.month-grid .tile .event-count {
2026-09-05 02:36:46 +02:00
display: none;
background-color: var(--text-normal);
color: var(--background);
opacity: 0.6;
border-radius: 100%;
width: 1rem;
height: 1rem;
font-size: 0.6rem;
font-weight: bold;
align-items: center;
justify-content: center;
2024-07-28 18:33:58 +02:00
}
2026-04-18 11:55:01 +00:00
.month-grid .tile .event-count[has-events] {
2026-09-05 02:36:46 +02:00
background-color: var(--primary);
opacity: 1;
2024-07-28 18:33:58 +02:00
}
2026-04-18 11:55:01 +00:00
.month-grid .tile .event-list {
2026-09-05 02:36:46 +02:00
display: flex;
flex-direction: column;
height: 100%;
width: 100%;
gap: var(--gap-between-tiles);
2024-07-28 18:33:58 +02:00
}
2026-04-18 11:55:01 +00:00
.month-grid .tile .event-list span {
2026-09-05 02:36:46 +02:00
animation: slide-up var(--animation-duration);
2024-07-24 15:59:48 +02:00
}
2026-05-05 14:04:00 +00:00
@media (max-width: 900px) {
2026-09-05 02:36:46 +02:00
.month-grid .tile {
padding: 0px;
}
.month-grid .tile > div {
align-items: center;
justify-content: center;
}
.month-grid .tile .event-count {
display: flex;
}
.month-grid .tile .event-list {
display: none;
}
2024-07-23 23:32:49 +02:00
}
2026-04-11 20:30:35 +00:00
/* src/View/Modals/splitModal.css */
2026-04-08 21:14:37 +00:00
.modal > div:has(.split-modal[extended]) {
2026-09-05 02:36:46 +02:00
max-width: 64rem;
2026-04-08 21:14:37 +00:00
}
2026-04-08 21:03:36 +00:00
.split-modal {
2026-09-05 02:36:46 +02:00
width: 100%;
height: 100%;
display: flex;
overflow-x: scroll;
overflow-y: hidden;
scroll-behavior: smooth;
scroll-snap-type: x mandatory;
2024-07-21 17:55:53 +02:00
}
2026-04-08 21:03:36 +00:00
.split-modal > div {
2026-09-05 02:36:46 +02:00
width: 100%;
min-width: calc(100% - 4rem);
flex: 0;
scroll-snap-align: center;
2024-07-21 18:56:56 +02:00
}
2026-04-10 19:00:59 +00:00
.split-modal > div,
.split-modal > div > .scroll-area {
2026-09-05 02:36:46 +02:00
width: 100%;
display: flex;
flex-direction: column;
align-items: stretch;
justify-content: start;
2026-04-10 19:00:59 +00:00
}
2026-04-10 19:24:58 +00:00
.split-modal[navigation]:not([page-open]) > div {
2026-09-05 02:36:46 +02:00
justify-content: safe center;
2026-04-10 19:24:58 +00:00
}
2026-04-10 19:00:59 +00:00
.split-modal[navigation] > div {
2026-09-05 02:36:46 +02:00
min-width: 100%;
2026-04-10 19:00:59 +00:00
}
2026-04-08 21:03:36 +00:00
.split-modal .scroll-area {
2026-09-05 02:36:46 +02:00
flex: 1;
width: 100%;
overflow-y: auto;
padding: var(--content-padding);
2024-07-21 18:56:56 +02:00
}
2026-04-10 19:00:59 +00:00
.split-modal[navigation] > div:nth-child(2) > .flex-row > button {
2026-09-05 02:36:46 +02:00
transform: translateX(calc(-1 * var(--content-padding)));
2026-04-10 19:00:59 +00:00
}
2026-04-08 21:03:36 +00:00
.split-modal .detail-button-wrapper {
2026-09-05 02:36:46 +02:00
display: flex;
justify-content: end;
border-top: 1px solid var(--border);
padding: var(--content-padding);
2024-07-21 18:56:56 +02:00
}
2026-04-08 21:03:36 +00:00
.split-modal .detail-button-wrapper button {
2026-09-05 02:36:46 +02:00
max-width: 100%;
2024-07-21 17:55:53 +02:00
}
2026-04-08 21:03:36 +00:00
.split-modal code {
2026-09-05 02:36:46 +02:00
width: 100%;
height: 100%;
font-size: 0.9rem;
2024-07-21 17:55:53 +02:00
}
@media (min-width: 640px) {
2026-09-05 02:36:46 +02:00
.split-modal > div {
flex: 1;
min-width: unset;
}
.split-modal[navigation] > div {
min-width: unset;
}
.split-modal[navigation] > div:first-child {
flex: 0;
min-width: 20rem;
}
.split-modal:not([navigation]) > div {
width: 50%;
min-width: 50%;
}
.split-modal .detail-button-wrapper {
display: none;
}
2024-07-21 17:55:53 +02:00
}
2026-04-10 19:00:59 +00:00
@media (max-width: 640px) {
2026-09-05 02:36:46 +02:00
.split-modal[navigation]:not([page-open]) > div:nth-child(2) {
display: none;
}
.split-modal[navigation][page-open] > div:first-child {
display: none;
}
2026-04-10 19:00:59 +00:00
}