489 lines
10 KiB
CSS
489 lines
10 KiB
CSS
@import 'events.css';
|
|
|
|
:root {
|
|
--borders: color-mix(in srgb, currentColor 15%, transparent);
|
|
--insensitive-fg-color: color-mix(in srgb, var(--window-fg-color) 50%, transparent);
|
|
|
|
--month-separator-color: color-mix(in srgb, var(--borders), var(--dark-5) 9%);
|
|
--month-today-color: rgb(from var(--accent-bg-color) r g b / 15%);
|
|
--month-today-hover-color: rgb(from var(--accent-bg-color) r g b / 25%);
|
|
--month-selected-today-color: rgb(from var(--accent-bg-color) r g b / 33%);
|
|
--month-selected-today-hover-color: rgb(from var(--accent-bg-color) r g b / 40%);
|
|
--month-selected-border-color: rgb(from var(--accent-bg-color) r g b / 20%);
|
|
--month-selected-bg-color: rgb(from var(--accent-bg-color) r g b / 10%);
|
|
--month-selected-bg-hover-color: rgb(from var(--accent-bg-color) r g b / 17%);
|
|
}
|
|
|
|
/* Header labels */
|
|
label.primary-label {
|
|
font-size: 16pt;
|
|
font-weight: bold;
|
|
color: var(--accent-color);
|
|
padding: 12px;
|
|
}
|
|
|
|
label.secondary-label {
|
|
font-size: 16pt;
|
|
font-weight: bold;
|
|
padding: 12px;
|
|
color: rgb(from var(--window-fg-color) r g b / 55%);
|
|
}
|
|
|
|
calendar-view {
|
|
font-size: 10pt;
|
|
}
|
|
|
|
calendar-view.header,
|
|
label.header {
|
|
font-size: 10pt;
|
|
font-weight: bold;
|
|
color: rgb(from var(--window-fg-color) r g b / 55%);
|
|
}
|
|
|
|
calendar-view.current,
|
|
weekgrid.current {
|
|
background-color: rgb(from var(--accent-bg-color) r g b / 30%);
|
|
}
|
|
|
|
calendar-view:selected {
|
|
color: var(--accent-color);
|
|
font-weight: bold;
|
|
}
|
|
|
|
|
|
/* Event Popover */
|
|
popover.event-popover,
|
|
popover.event-popover > contents {
|
|
padding: 0;
|
|
}
|
|
|
|
.search-viewport {
|
|
background-color: var(--view-bg-color);
|
|
}
|
|
|
|
/* calendar popover */
|
|
.calendar-list {
|
|
background-color: transparent;
|
|
}
|
|
|
|
.calendar-list > list {
|
|
border-radius: 4px;
|
|
}
|
|
|
|
/* Edit dialog's header button */
|
|
.sources-button {
|
|
margin-top: -6px;
|
|
margin-bottom: -6px;
|
|
}
|
|
|
|
.sources-button > button {
|
|
border-radius: 0;
|
|
}
|
|
|
|
/* defeats the ugly hover effect of the calendar color dot on buttons */
|
|
.calendar-color-image {
|
|
-gtk-icon-filter: none;
|
|
}
|
|
|
|
/* adds a subtle shadow to the calendar color dot when it makes sense */
|
|
image.calendar-color-image,
|
|
button:active:not(:backdrop) .calendar-color-image,
|
|
button:checked:not(:backdrop) .calendar-color-image,
|
|
.calendars-list .calendar-color-image:not(:backdrop):not(:disabled),
|
|
.calendar-list .calendar-color-image:not(:backdrop):not(:disabled),
|
|
.sources-button:not(:backdrop):not(:disabled) .calendar-color-image {
|
|
-gtk-icon-shadow: 0 1px rgb(from black r g b / 10%);
|
|
}
|
|
|
|
|
|
/* Date chooser */
|
|
|
|
/* month/year controls */
|
|
datechooser navigator { /* add some space between the two controls */
|
|
margin-right: 6px;
|
|
margin-left: 6px;
|
|
margin-bottom: 6px;
|
|
}
|
|
|
|
datechooser navigator label {
|
|
font-weight: bold;
|
|
}
|
|
|
|
datechooser navigator button {
|
|
padding: 0;
|
|
}
|
|
|
|
/* week numbers, with a style resembling GNOME Shell's */
|
|
datechooser .weeknum{
|
|
font-size: smaller;
|
|
font-weight: bold;
|
|
margin: 6px;
|
|
padding: 4px;
|
|
border-radius: 5px;
|
|
background-color: rgb(from var(--insensitive-fg-color) r g b / 10%);
|
|
color: var(--insensitive-fg-color);
|
|
}
|
|
|
|
/* day names */
|
|
datechooser .weekday {
|
|
color: var(--insensitive-fg-color);
|
|
font-size: smaller;
|
|
font-weight: bold;
|
|
}
|
|
|
|
/* days */
|
|
datechooser button.day {
|
|
font-size: 10pt;
|
|
font-weight: normal;
|
|
min-height: 26px;
|
|
min-width: 26px;
|
|
margin: 2px;
|
|
padding: 3px;
|
|
transition: none;
|
|
}
|
|
|
|
datechooser button.day dot {
|
|
background-color: var(--window-fg-color);
|
|
border-radius: 50%;
|
|
min-height: 3px;
|
|
min-width: 3px;
|
|
}
|
|
|
|
datechooser button.day:selected {
|
|
background-color: var(--accent-bg-color);
|
|
color: var(--accent-fg-color);
|
|
font-weight: bold;
|
|
}
|
|
|
|
datechooser button.day:selected dot {
|
|
background-color: var(--accent-fg-color);
|
|
}
|
|
|
|
datechooser button.day.non-workday {
|
|
color: var(--insensitive-fg-color);
|
|
}
|
|
|
|
datechooser button.day.non-workday:selected {
|
|
color: var(--accent-fg-color);
|
|
}
|
|
|
|
datechooser button.day.today {
|
|
color: var(--accent-color);
|
|
}
|
|
|
|
datechooser button.day.today dot {
|
|
background-color: var(--accent-color);
|
|
}
|
|
|
|
datechooser button.day.today:selected {
|
|
background-color: var(--accent-bg-color);
|
|
color: var(--accent-fg-color);
|
|
}
|
|
|
|
datechooser button.day.today:selected dot {
|
|
background-color: var(--accent-fg-color);
|
|
}
|
|
|
|
datechooser button.day.other-month:not(:hover),
|
|
datechooser button.day.other-month:backdrop {
|
|
color: rgb(from currentColor r g b / 50%);
|
|
}
|
|
|
|
datechooser button.day.other-month:not(:hover) dot,
|
|
datechooser button.day.other-month:backdrop dot {
|
|
background-color: rgb(from currentColor r g b / 50%);
|
|
}
|
|
|
|
datechooser button.day.other-month:hover:not(:backdrop) {
|
|
color: var(--insensitive-fg-color);
|
|
}
|
|
|
|
datechooser button.day.other-month:hover:not(:backdrop) dot {
|
|
background-color: var(--insensitive-fg-color);
|
|
}
|
|
|
|
label.month-name {
|
|
font-size: 16pt;
|
|
font-weight: bold;
|
|
color: var(--accent-color);
|
|
padding: 12px;
|
|
}
|
|
|
|
/* Week View CSS */
|
|
|
|
.week-header .week-number {
|
|
font-size: 16pt;
|
|
font-weight: bold;
|
|
padding: 12px 12px 18px 12px;
|
|
color: rgb(from var(--window-fg-color) r g b / 25%);
|
|
}
|
|
|
|
.week-header.week-temperature {
|
|
font-size: 10pt;
|
|
font-weight: bold;
|
|
color: rgb(from var(--window-fg-color) r g b / 55%);
|
|
}
|
|
|
|
.week-header.lines {
|
|
color: rgb(from var(--window-fg-color) r g b / 15%);
|
|
}
|
|
|
|
weekhourbar > label {
|
|
font-size: 10pt;
|
|
padding: 4px 6px;
|
|
}
|
|
|
|
.week-view .lines {
|
|
color: rgb(from var(--window-fg-color) r g b / 15%);
|
|
}
|
|
|
|
weekgrid > widget.now-strip {
|
|
background-color: rgb(from var(--accent-bg-color) r g b / 80%);
|
|
margin: 0 0 0 1px;
|
|
min-height: 2px;
|
|
}
|
|
|
|
weekgrid.dnd, .week-header.dnd {
|
|
background-color: rgb(from var(--accent-bg-color) r g b / 25%);
|
|
}
|
|
|
|
weekheader > selection,
|
|
weekgrid > selection,
|
|
weekheader > droptarget,
|
|
weekgrid > droptarget {
|
|
background-color: rgb(from var(--accent-bg-color) r g b / 25%);
|
|
border-radius: 6px;
|
|
margin: 2px 0 1px 2px;
|
|
}
|
|
|
|
button.week-header-expander:checked image {
|
|
transform: rotateZ(180deg);
|
|
transition: 200ms;
|
|
}
|
|
|
|
/*
|
|
* Month cell
|
|
*/
|
|
|
|
monthcell {
|
|
border: solid 1px rgb(from var(--borders) r g b / 7.5%);
|
|
border-width: 1px 0 0 1px;
|
|
background-color: transparent;
|
|
transition: background-color 200ms;
|
|
}
|
|
|
|
monthcell:hover {
|
|
background-color: var(--window-bg-color);
|
|
transition: background-color 200ms;
|
|
}
|
|
|
|
/* Today */
|
|
monthcell.today { background-color: var(--month-today-color); }
|
|
monthcell.today:hover { background-color: var(--month-today-hover-color); }
|
|
|
|
monthcell:selected.today { background-color: var(--month-selected-today-color); }
|
|
monthcell:selected.today:hover { background-color: var(--month-selected-today-hover-color); }
|
|
|
|
monthcell.today label.day-label {
|
|
background-color: rgb(from var(--accent-bg-color) r g b / 80%);
|
|
color: var(--accent-fg-color);
|
|
border-radius: 99px;
|
|
padding: 0 6px;
|
|
}
|
|
|
|
/* Out of Month */
|
|
monthcell.out-of-month {
|
|
background-color: rgb(from var(--window-fg-color) r g b / 3%);
|
|
}
|
|
|
|
monthcell.out-of-month:not(.today) {
|
|
background-color: rgb(from var(--window-fg-color) r g b / 1%);
|
|
}
|
|
|
|
monthcell.out-of-month:hover,
|
|
monthcell.out-of-month:not(.today):hover {
|
|
background-color: rgb(from var(--window-fg-color) r g b / 5%);
|
|
transition: background-color 200ms;
|
|
}
|
|
|
|
monthcell.out-of-month label { color: rgb(from var(--window-fg-color) r g b / 40%); }
|
|
|
|
monthcell:not(.workday) {
|
|
background-color: rgb(from var(--window-fg-color) r g b / 1%);
|
|
}
|
|
monthcell:not(.workday):hover {
|
|
background-color: rgb(from var(--window-fg-color) r g b / 3%);
|
|
}
|
|
monthcell.today:not(.workday) {
|
|
background-color: rgb(from var(--accent-bg-color) r g b / 15%);
|
|
}
|
|
|
|
/* Selected */
|
|
monthcell:selected,
|
|
monthcell.out-of-month:selected,
|
|
monthcell:not(.workday):selected {
|
|
border-color: var(--month-selected-border-color);
|
|
background-color: var(--month-selected-bg-color);
|
|
}
|
|
|
|
monthcell:selected:hover,
|
|
monthcell.out-of-month:selected:hover,
|
|
monthcell:not(.workday):selected:hover {
|
|
background-color: var(--month-selected-bg-hover-color);
|
|
transition: background-color 200ms;
|
|
}
|
|
|
|
monthcell:selected label.day-label,
|
|
monthcell.out-of-month:selected label.day-label,
|
|
monthcell:not(.workday):selected label.day-label {
|
|
font-weight: bold;
|
|
}
|
|
|
|
/* Button */
|
|
monthcell button {
|
|
font-weight: normal;
|
|
padding: 0 4px;
|
|
border-radius: 0;
|
|
border-bottom: none;
|
|
border-right: none;
|
|
}
|
|
|
|
/* Separators */
|
|
monthcell.separator-top,
|
|
monthcell.separator-top:selected {
|
|
border-top: 1px solid var(--month-separator-color);
|
|
}
|
|
|
|
monthcell.separator-side:dir(ltr),
|
|
monthcell.separator-side:selected:dir(ltr) {
|
|
border-left: 1px solid var(--month-separator-color);
|
|
}
|
|
|
|
monthcell:nth-child(7n + 1):dir(ltr),
|
|
monthcell:nth-child(7n + 1):selected:dir(ltr) {
|
|
border-left-width: 0;
|
|
}
|
|
|
|
monthcell.separator-side:dir(rtl),
|
|
monthcell.separator-side:selected:dir(rtl) {
|
|
border-right: 1px solid var(--month-separator-color);
|
|
}
|
|
|
|
monthcell:nth-child(7n + 1):dir(rtl),
|
|
monthcell:nth-child(7n + 1):selected:dir(rtl) {
|
|
border-right-width: 0;
|
|
}
|
|
|
|
/*
|
|
* Month row
|
|
*/
|
|
|
|
calendar-view.scrolling > box {
|
|
background-color: transparent;
|
|
box-shadow: var(--headerbar-shade-color) 0 2px 4px;
|
|
transition: box-shadow 200ms;
|
|
}
|
|
|
|
|
|
calendar-view:not(.scrolling) > box {
|
|
transition: box-shadow 200ms;
|
|
}
|
|
|
|
/*
|
|
* Month popover
|
|
*/
|
|
|
|
monthpopover > box {
|
|
margin: 4px;
|
|
padding: 12px;
|
|
background-color: var(--popover-bg-color);
|
|
}
|
|
|
|
.notes-section box > textview {
|
|
border-radius: 8px;
|
|
padding: 8px;
|
|
}
|
|
|
|
.notes-section box > textview > text {
|
|
background: none;
|
|
}
|
|
|
|
/* Agenda View CSS */
|
|
|
|
agenda-view list > row {
|
|
padding: 2px 12px;
|
|
}
|
|
|
|
agenda-view list > label {
|
|
padding: 6px 12px;
|
|
}
|
|
|
|
.sidebar-pane agenda-view .background {
|
|
background: none;
|
|
color: inherit;
|
|
}
|
|
|
|
label.no-events {
|
|
font-style: italic;
|
|
}
|
|
|
|
/*
|
|
* Search
|
|
*/
|
|
|
|
searchbutton > popover > arrow {
|
|
background: none;
|
|
border: none;
|
|
}
|
|
|
|
searchbutton > popover listview > row:selected {
|
|
background-color: rgb(from var(--accent-bg-color) r g b / 11%);
|
|
}
|
|
|
|
/*
|
|
* Month selector
|
|
*/
|
|
|
|
datechooser {
|
|
padding: 6px;
|
|
}
|
|
|
|
datechooser .current-week {
|
|
background: rgb(from currentColor r g b / 10%);
|
|
color: var(--headerbar-fg-color);
|
|
border-radius: 9px;
|
|
}
|
|
|
|
menubutton stack > box {
|
|
border-spacing: 4px;
|
|
}
|
|
|
|
/*
|
|
* Sync Indicator
|
|
*/
|
|
|
|
syncindicator {
|
|
padding: 6px;
|
|
}
|
|
|
|
/*
|
|
* Styles for the drop overlay.
|
|
* From Amberol https://gitlab.gnome.org/World/amberol/-/blob/0dd6250ffd294b14532c428dcb76ae42086a5923/src/gtk/style.css
|
|
*/
|
|
|
|
/* Removes the default style */
|
|
.drop-target:drop(active) {
|
|
box-shadow: none;
|
|
}
|
|
|
|
/* Custom style for the drop overlay area */
|
|
.drop-overlay-area {
|
|
padding: 32px;
|
|
color: var(--accent-fg-color);
|
|
background-color: rgb(from var(--accent-bg-color) r g b / 50%);
|
|
}
|
|
|
|
.blurred {
|
|
filter: blur(6px);
|
|
}
|