mirror of
https://github.com/kevinveenbirkenbach/computer-playbook.git
synced 2025-04-28 10:26:54 +02:00
Compare commits
9 Commits
2e5a97b0a1
...
e87c3e2090
Author | SHA1 | Date | |
---|---|---|---|
e87c3e2090 | |||
671448dbfc | |||
82bdbbaf57 | |||
fcac18f77f | |||
c7901949cc | |||
0a26499a34 | |||
ff1f7b53af | |||
ba35f43902 | |||
c8debee1ca |
@ -5,5 +5,4 @@ mode_reset: false # Cleans up all CyMaIS files. It's necessary to run to whole
|
|||||||
mode_test: false # Executes test routines instead of productive routines
|
mode_test: false # Executes test routines instead of productive routines
|
||||||
mode_update: true # Executes updates
|
mode_update: true # Executes updates
|
||||||
mode_backup: true # Activates the backup before the update procedure
|
mode_backup: true # Activates the backup before the update procedure
|
||||||
mode_setup: false # Execute the setup and initializing procedures
|
|
||||||
mode_cleanup: false # Cleanup unused files and configurations
|
mode_cleanup: false # Cleanup unused files and configurations
|
@ -30,6 +30,7 @@ defaults_applications:
|
|||||||
## Big Blue Button
|
## Big Blue Button
|
||||||
bigbluebutton:
|
bigbluebutton:
|
||||||
enable_greenlight: "true"
|
enable_greenlight: "true"
|
||||||
|
setup: false # Set to true in inventory file for initial setup
|
||||||
|
|
||||||
## Bluesky
|
## Bluesky
|
||||||
bluesky:
|
bluesky:
|
||||||
@ -91,14 +92,15 @@ defaults_applications:
|
|||||||
version: "2.0.0-dev" # @todo Attention: Change this as fast as released to latest
|
version: "2.0.0-dev" # @todo Attention: Change this as fast as released to latest
|
||||||
webinterface: "lam" # The webinterface which should be used. Possible: lam and phpldapadmin
|
webinterface: "lam" # The webinterface which should be used. Possible: lam and phpldapadmin
|
||||||
administrator_username: "{{administrator_username}}"
|
administrator_username: "{{administrator_username}}"
|
||||||
administrator_password: "{{user_administrator_initial_password}}" # CHANGE for security reasons in inventory file
|
# administrator_password: # CHANGE for security reasons in inventory file
|
||||||
administrator_database_password: "{{user_administrator_initial_password}}" # CHANGE for security reasons in inventory file
|
# administrator_database_password: # CHANGE for security reasons in inventory file
|
||||||
|
|
||||||
## Listmonk
|
## Listmonk
|
||||||
listmonk:
|
listmonk:
|
||||||
administrator_username: "{{administrator_username}}"
|
administrator_username: "{{administrator_username}}"
|
||||||
public_api_activated: False # Security hole. Can be used for spaming
|
public_api_activated: False # Security hole. Can be used for spaming
|
||||||
version: "latest"
|
version: "latest"
|
||||||
|
setup: false # Set true in inventory file to execute the setup and initializing procedures
|
||||||
|
|
||||||
## MariaDB
|
## MariaDB
|
||||||
mariadb:
|
mariadb:
|
||||||
@ -111,7 +113,8 @@ defaults_applications:
|
|||||||
## Mastodon
|
## Mastodon
|
||||||
mastodon:
|
mastodon:
|
||||||
version: "latest"
|
version: "latest"
|
||||||
single_user_mode: false
|
single_user_mode: false # Set true for initial setup
|
||||||
|
setup: false # Set true in inventory file to execute the setup and initializing procedures
|
||||||
|
|
||||||
## Matrix
|
## Matrix
|
||||||
matrix:
|
matrix:
|
||||||
@ -123,12 +126,13 @@ defaults_applications:
|
|||||||
version: "latest"
|
version: "latest"
|
||||||
element:
|
element:
|
||||||
version: "latest"
|
version: "latest"
|
||||||
|
setup: false # Set true in inventory file to execute the setup and initializing procedures
|
||||||
|
|
||||||
## Mailu
|
## Mailu
|
||||||
mailu:
|
mailu:
|
||||||
version: "2024.06"
|
version: "2024.06"
|
||||||
domain: "{{primary_domain}}"
|
domain: "{{primary_domain}}"
|
||||||
subnet: "192.168.203.0/24"
|
setup: false # Set true in inventory file to execute the setup and initializing procedures
|
||||||
|
|
||||||
## Moodle
|
## Moodle
|
||||||
moodle:
|
moodle:
|
||||||
|
@ -45,13 +45,17 @@ ldap_enabled: false
|
|||||||
|
|
||||||
ldap:
|
ldap:
|
||||||
# Enables LDAP for all roles in play if true
|
# Enables LDAP for all roles in play if true
|
||||||
enabled: true
|
enabled: true
|
||||||
# Distinguished Names (DN)
|
# Distinguished Names (DN)
|
||||||
dn:
|
dn:
|
||||||
# Defines the base Distinguished Name (DN) for the LDAP directory, constructed from the second-level domain (SLD) and top-level domain (TLD).
|
# Defines the base Distinguished Name (DN) for the LDAP directory, constructed from the second-level domain (SLD) and top-level domain (TLD).
|
||||||
root: "{{_ldap_dn_base}}"
|
root: "{{_ldap_dn_base}}"
|
||||||
# Specifies the Distinguished Name (DN) of the LDAP administrator, combining the admin's username with the LDAP root domain.
|
# Specifies the Distinguished Name (DN) of the LDAP administrator, combining the admin's username with the LDAP root domain.
|
||||||
administrator: "cn={{applications.ldap.administrator_username}},{{_ldap_dn_base}}"
|
bind: "cn={{applications.ldap.administrator_username}},{{_ldap_dn_base}}"
|
||||||
|
# Dn from which the users should be read
|
||||||
|
users: "ou=users,{{_ldap_dn_base}}"
|
||||||
|
# Password to access dn.bind
|
||||||
|
bind_credential: "{{applications.ldap.administrator_database_password}}"
|
||||||
server:
|
server:
|
||||||
domain: "{{applications.ldap.openldap.hostname if applications.ldap.openldap.network.local | bool else domains.ldap}}" # Mapping for public or locale access
|
domain: "{{applications.ldap.openldap.hostname if applications.ldap.openldap.network.local | bool else domains.ldap}}" # Mapping for public or locale access
|
||||||
uri: "{% if applications.ldap.openldap.network.local | bool %}ldap://{{ applications.ldap.openldap.hostname }}:{{ ports.localhost.ldap.openldap }}{% else %}ldaps://{{ domains.ldap }}:{{ ports.public.ldaps.openldap }}{% endif %}"
|
uri: "{% if applications.ldap.openldap.network.local | bool %}ldap://{{ applications.ldap.openldap.hostname }}:{{ ports.localhost.ldap.openldap }}{% else %}ldaps://{{ domains.ldap }}:{{ ports.public.ldaps.openldap }}{% endif %}"
|
||||||
|
@ -6,15 +6,19 @@ global_theming:
|
|||||||
base: "#001f3f"
|
base: "#001f3f"
|
||||||
|
|
||||||
# Sucess Color
|
# Sucess Color
|
||||||
success: "#B2D3B2"
|
success: "#B2D3B2"
|
||||||
# As the warning color – a light brown (earth)
|
# As the warning color – a light brown (earth)
|
||||||
warning: "#D2B48C"
|
warning: "#D2B48C"
|
||||||
# For error messages (standard red)
|
# For error messages (standard red)
|
||||||
error: "#DC3545"
|
error: "#DC3545"
|
||||||
# As the info color – a very light blue (symbolizing the sky)
|
# As the info color – a very light blue (symbolizing the sky)
|
||||||
info: "#F0F8FF"
|
info: "#F0F8FF"
|
||||||
filters:
|
filters:
|
||||||
saturation_change: 100
|
saturation_change: 70
|
||||||
hue_shift: 0
|
hue_shift: 0
|
||||||
|
|
||||||
global_theming_enabled: true
|
# Global Theming is default enabled for all roles
|
||||||
|
# If you want to disable the global css for a role, set
|
||||||
|
# global_theming_enabled: false
|
||||||
|
# in var/main.yml
|
||||||
|
global_theming_enabled: true
|
@ -44,17 +44,17 @@
|
|||||||
- name: wait for database
|
- name: wait for database
|
||||||
pause:
|
pause:
|
||||||
seconds: "{{pause_duration}}"
|
seconds: "{{pause_duration}}"
|
||||||
when: mode_setup | bool
|
when: appplications.bigbluebutton.setup | bool
|
||||||
|
|
||||||
- name: create admin
|
- name: create admin
|
||||||
command:
|
command:
|
||||||
cmd: docker compose exec greenlight bundle exec rake admin:create
|
cmd: docker compose exec greenlight bundle exec rake admin:create
|
||||||
chdir: "{{docker_compose.directories.instance}}"
|
chdir: "{{docker_compose.directories.instance}}"
|
||||||
when: mode_setup | bool
|
when: appplications.bigbluebutton.setup | bool
|
||||||
ignore_errors: true
|
ignore_errors: true
|
||||||
register: admin_creation_result
|
register: admin_creation_result
|
||||||
|
|
||||||
- name: print admin user data
|
- name: print admin user data
|
||||||
debug:
|
debug:
|
||||||
msg: "{{ admin_creation_result.stdout }}"
|
msg: "{{ admin_creation_result.stdout }}"
|
||||||
when: mode_setup | bool
|
when: appplications.bigbluebutton.setup | bool
|
@ -109,8 +109,8 @@ DJANGO_SECRET_KEY={{funkwhale_django_secret}}
|
|||||||
|
|
||||||
LDAP_ENABLED = True
|
LDAP_ENABLED = True
|
||||||
LDAP_SERVER_URI = "{{ldap.server.uri}}"
|
LDAP_SERVER_URI = "{{ldap.server.uri}}"
|
||||||
LDAP_BIND_DN = "{{ldap.dn.administrator}}"
|
LDAP_BIND_DN = "{{ldap.dn.bind}}"
|
||||||
LDAP_BIND_PASSWORD = "{{applications.ldap.administrator_database_password}}"
|
LDAP_BIND_PASSWORD = "{{ldap.dn.bind_credential}}"
|
||||||
LDAP_SEARCH_FILTER = "(|(cn={0})(mail={0}))"
|
LDAP_SEARCH_FILTER = "(|(cn={0})(mail={0}))"
|
||||||
LDAP_START_TLS = False
|
LDAP_START_TLS = False
|
||||||
LDAP_ROOT_DN = "{{ldap.dn.root}}"
|
LDAP_ROOT_DN = "{{ldap.dn.root}}"
|
||||||
|
@ -1923,7 +1923,7 @@
|
|||||||
"false"
|
"false"
|
||||||
],
|
],
|
||||||
"usersDn": [
|
"usersDn": [
|
||||||
"ou=users,dc=veen,dc=world"
|
"{{ldap.dn.users}}"
|
||||||
],
|
],
|
||||||
"connectionPooling": [
|
"connectionPooling": [
|
||||||
"true"
|
"true"
|
||||||
@ -1941,7 +1941,7 @@
|
|||||||
"true"
|
"true"
|
||||||
],
|
],
|
||||||
"bindCredential": [
|
"bindCredential": [
|
||||||
"**********"
|
"{{ldap.bind_credential}}"
|
||||||
],
|
],
|
||||||
"changedSyncPeriod": [
|
"changedSyncPeriod": [
|
||||||
"-1"
|
"-1"
|
||||||
@ -1950,7 +1950,7 @@
|
|||||||
"uid"
|
"uid"
|
||||||
],
|
],
|
||||||
"bindDn": [
|
"bindDn": [
|
||||||
"cn=administrator,dc=veen,dc=world"
|
"{{ldap.dn.bind}}"
|
||||||
],
|
],
|
||||||
"lastSync": [
|
"lastSync": [
|
||||||
"1737578007"
|
"1737578007"
|
||||||
@ -1965,7 +1965,7 @@
|
|||||||
"false"
|
"false"
|
||||||
],
|
],
|
||||||
"connectionUrl": [
|
"connectionUrl": [
|
||||||
"ldap://openldap"
|
"{{ldap.dn.server.uri}}"
|
||||||
],
|
],
|
||||||
"syncRegistrations": [
|
"syncRegistrations": [
|
||||||
"true"
|
"true"
|
||||||
|
@ -19,7 +19,7 @@
|
|||||||
|
|
||||||
- name: "Import Access Roles to OpenLDAP"
|
- name: "Import Access Roles to OpenLDAP"
|
||||||
shell: >
|
shell: >
|
||||||
docker exec -i openldap ldapadd -x -D "{{ldap.dn.administrator}}" -w "{{applications.ldap.administrator_database_password}}" -c -f "{{ldif_docker_path}}04_access_profiles.ldif"
|
docker exec -i openldap ldapadd -x -D "{{ldap.dn.bind}}" -w "{{ldap.dn.bind_credential}}" -c -f "{{ldif_docker_path}}04_access_profiles.ldif"
|
||||||
register: ldapadd_result
|
register: ldapadd_result
|
||||||
changed_when: "'adding new entry' in ldapadd_result.stdout"
|
changed_when: "'adding new entry' in ldapadd_result.stdout"
|
||||||
# Allow return code 0 (all entries added) or 68 (entry already exists)
|
# Allow return code 0 (all entries added) or 68 (entry already exists)
|
||||||
|
@ -34,7 +34,7 @@ services:
|
|||||||
- '{{ldif_host_path}}:{{ldif_docker_path}}:ro' # Mounting all ldif files for import
|
- '{{ldif_host_path}}:{{ldif_docker_path}}:ro' # Mounting all ldif files for import
|
||||||
healthcheck:
|
healthcheck:
|
||||||
test: >
|
test: >
|
||||||
ldapsearch -x -H ldap://localhost:{{ldap_docker_port}} -b "{{ldap.dn.root}}" -D "{{ldap.dn.administrator}}" -w "{{applications.ldap.administrator_database_password}}"
|
ldapsearch -x -H ldap://localhost:{{ldap_docker_port}} -b "{{ldap.dn.root}}" -D "{{ldap.dn.bind}}" -w "{{ldap.dn.bind_credential}}"
|
||||||
interval: 30s
|
interval: 30s
|
||||||
timeout: 10s
|
timeout: 10s
|
||||||
retries: 3
|
retries: 3
|
||||||
|
@ -12,7 +12,7 @@ LDAP_PASSWORDS= ' ' # Comma separated li
|
|||||||
LDAP_ROOT= {{ldap.dn.root}} # LDAP baseDN (or suffix) of the LDAP tree. Default: dc=example,dc=org
|
LDAP_ROOT= {{ldap.dn.root}} # LDAP baseDN (or suffix) of the LDAP tree. Default: dc=example,dc=org
|
||||||
|
|
||||||
## Admin
|
## Admin
|
||||||
LDAP_ADMIN_DN= {{ldap.dn.administrator}} # Not well documented. Don't know if this has an effect
|
LDAP_ADMIN_DN= {{ldap.dn.bind}}
|
||||||
LDAP_CONFIG_ADMIN_ENABLED= yes
|
LDAP_CONFIG_ADMIN_ENABLED= yes
|
||||||
LDAP_CONFIG_ADMIN_USERNAME= {{applications.ldap.administrator_username}}
|
LDAP_CONFIG_ADMIN_USERNAME= {{applications.ldap.administrator_username}}
|
||||||
LDAP_CONFIG_ADMIN_PASSWORD= {{applications.ldap.administrator_password}}
|
LDAP_CONFIG_ADMIN_PASSWORD= {{applications.ldap.administrator_password}}
|
||||||
|
@ -9,5 +9,5 @@ LAM_CONFIGURATION_DATABASE= files
|
|||||||
# LDAP Configuration
|
# LDAP Configuration
|
||||||
LDAP_SERVER= {{ldap.server.domain}} # domain of LDAP database root entry
|
LDAP_SERVER= {{ldap.server.domain}} # domain of LDAP database root entry
|
||||||
LDAP_BASE_DN= {{ldap.dn.root}} # LDAP base DN to overwrite value generated by LDAP_DOMAIN
|
LDAP_BASE_DN= {{ldap.dn.root}} # LDAP base DN to overwrite value generated by LDAP_DOMAIN
|
||||||
LDAP_USER= {{ldap.dn.administrator}} # LDAP admin user (set as login user for LAM)
|
LDAP_USER= {{ldap.dn.bind}} # LDAP admin user (set as login user for LAM)
|
||||||
LDAP_ADMIN_PASSWORD= {{applications.ldap.administrator_database_password}} # LDAP admin password
|
LDAP_ADMIN_PASSWORD= {{ldap.dn.bind_credential}} # LDAP admin password
|
@ -26,10 +26,10 @@
|
|||||||
|
|
||||||
- name: flush docker service
|
- name: flush docker service
|
||||||
meta: flush_handlers
|
meta: flush_handlers
|
||||||
when: mode_setup |bool
|
when: appplications.listmonk.setup |bool
|
||||||
|
|
||||||
- name: setup routine for listmonk
|
- name: setup routine for listmonk
|
||||||
command:
|
command:
|
||||||
cmd: docker compose run -T --rm application sh -c "yes | ./listmonk --install"
|
cmd: docker compose run -T --rm application sh -c "yes | ./listmonk --install"
|
||||||
chdir: "{{docker_compose.directories.instance}}"
|
chdir: "{{docker_compose.directories.instance}}"
|
||||||
when: mode_setup |bool
|
when: appplications.listmonk.setup |bool
|
@ -17,11 +17,11 @@
|
|||||||
|
|
||||||
- name: flush docker service
|
- name: flush docker service
|
||||||
meta: flush_handlers
|
meta: flush_handlers
|
||||||
when: mode_setup |bool
|
when: appplications.mailu.setup |bool
|
||||||
|
|
||||||
- name: execute database migration
|
- name: execute database migration
|
||||||
command:
|
command:
|
||||||
cmd: "docker compose -p mailu exec admin flask mailu admin admin {{primary_domain}} {{mailu_initial_root_password}}"
|
cmd: "docker compose -p mailu exec admin flask mailu admin admin {{primary_domain}} {{mailu_initial_root_password}}"
|
||||||
chdir: "{{docker_compose.directories.instance}}"
|
chdir: "{{docker_compose.directories.instance}}"
|
||||||
ignore_errors: true
|
ignore_errors: true
|
||||||
when: mode_setup |bool
|
when: appplications.mailu.setup |bool
|
@ -14,10 +14,10 @@
|
|||||||
|
|
||||||
- name: flush docker service
|
- name: flush docker service
|
||||||
meta: flush_handlers
|
meta: flush_handlers
|
||||||
when: mode_setup |bool
|
when: appplications.mastodon.setup |bool
|
||||||
|
|
||||||
- name: setup routine for mastodon
|
- name: setup routine for mastodon
|
||||||
command:
|
command:
|
||||||
cmd: "docker-compose run --rm web bundle exec rails db:migrate"
|
cmd: "docker-compose run --rm web bundle exec rails db:migrate"
|
||||||
chdir: "{{docker_compose.directories.instance}}"
|
chdir: "{{docker_compose.directories.instance}}"
|
||||||
when: mode_setup |bool
|
when: appplications.mastodon.setup |bool
|
@ -136,11 +136,11 @@
|
|||||||
cmd: docker compose exec -it synapse register_new_matrix_user -u {{applications.matrix.administrator_username}} -p {{matrix_admin_password}} -a -c /data/homeserver.yaml http://localhost:8008
|
cmd: docker compose exec -it synapse register_new_matrix_user -u {{applications.matrix.administrator_username}} -p {{matrix_admin_password}} -a -c /data/homeserver.yaml http://localhost:8008
|
||||||
chdir: "{{ docker_compose.directories.instance }}"
|
chdir: "{{ docker_compose.directories.instance }}"
|
||||||
ignore_errors: true
|
ignore_errors: true
|
||||||
when: mode_setup | bool
|
when: appplications.matrix.setup | bool
|
||||||
|
|
||||||
- name: create chatgpt bot
|
- name: create chatgpt bot
|
||||||
command:
|
command:
|
||||||
cmd: docker compose exec -it synapse register_new_matrix_user -u chatgptbot -p {{matrix_chatgpt_bridge_user_password}} -a -c /data/homeserver.yaml http://localhost:8008
|
cmd: docker compose exec -it synapse register_new_matrix_user -u chatgptbot -p {{matrix_chatgpt_bridge_user_password}} -a -c /data/homeserver.yaml http://localhost:8008
|
||||||
chdir: "{{ docker_compose.directories.instance }}"
|
chdir: "{{ docker_compose.directories.instance }}"
|
||||||
ignore_errors: true
|
ignore_errors: true
|
||||||
when: mode_setup | bool
|
when: appplications.matrix.setup | bool
|
@ -2,4 +2,12 @@ application_id: "wordpress"
|
|||||||
wordpress_max_upload_size: "64M"
|
wordpress_max_upload_size: "64M"
|
||||||
database_type: "mariadb"
|
database_type: "mariadb"
|
||||||
database_password: "{{wordpress_database_password}}"
|
database_password: "{{wordpress_database_password}}"
|
||||||
custom_wordpress_image: "custom_wordpress"
|
custom_wordpress_image: "custom_wordpress"
|
||||||
|
|
||||||
|
# Deactivate Global theming for wordpress role
|
||||||
|
# due to the reason that wordpress has to much different themes
|
||||||
|
# and one styling for all is not possible.
|
||||||
|
#
|
||||||
|
# May a solution could be to generate a template or css file dedicated
|
||||||
|
# for wordpress based on the theming values and import it.
|
||||||
|
global_theming_enabled: false
|
@ -61,9 +61,34 @@ def adjust_color(hex_color, target_lightness=None, lightness_change=0, hue_shift
|
|||||||
|
|
||||||
return '#{:02x}{:02x}{:02x}'.format(new_r, new_g, new_b)
|
return '#{:02x}{:02x}{:02x}'.format(new_r, new_g, new_b)
|
||||||
|
|
||||||
|
def adjust_color_rgb(hex_color, target_lightness=None, lightness_change=0, hue_shift=0, saturation_change=0):
|
||||||
|
"""
|
||||||
|
Wrapper function for adjust_color.
|
||||||
|
|
||||||
|
Calls adjust_color to get the adjusted HEX color and then converts it to a string
|
||||||
|
of comma-separated RGB values.
|
||||||
|
"""
|
||||||
|
adjusted_hex = adjust_color(
|
||||||
|
hex_color,
|
||||||
|
target_lightness=target_lightness,
|
||||||
|
lightness_change=lightness_change,
|
||||||
|
hue_shift=hue_shift,
|
||||||
|
saturation_change=saturation_change
|
||||||
|
)
|
||||||
|
|
||||||
|
# Remove '#' and parse the RGB components
|
||||||
|
hex_val = adjusted_hex.lstrip('#')
|
||||||
|
r = int(hex_val[0:2], 16)
|
||||||
|
g = int(hex_val[2:4], 16)
|
||||||
|
b = int(hex_val[4:6], 16)
|
||||||
|
|
||||||
|
return f"{r},{g},{b}"
|
||||||
|
|
||||||
|
# Integration in the FilterModule for Ansible
|
||||||
class FilterModule(object):
|
class FilterModule(object):
|
||||||
'''Custom filters for Ansible'''
|
'''Custom filters for Ansible'''
|
||||||
def filters(self):
|
def filters(self):
|
||||||
return {
|
return {
|
||||||
'adjust_color': adjust_color,
|
'adjust_color': adjust_color,
|
||||||
}
|
'adjust_color_rgb': adjust_color_rgb,
|
||||||
|
}
|
||||||
|
@ -2,7 +2,9 @@
|
|||||||
|
|
||||||
Global Theming Styles – Color and Shadow Variables
|
Global Theming Styles – Color and Shadow Variables
|
||||||
|
|
||||||
HINT: Better overwritte CSS variables instead of individual elements.
|
HINT:
|
||||||
|
- Better overwritte CSS variables instead of individual elements.
|
||||||
|
- Don't use !important. If possible use a specific selector.
|
||||||
|
|
||||||
*/
|
*/
|
||||||
|
|
||||||
@ -10,6 +12,7 @@ HINT: Better overwritte CSS variables instead of individual elements.
|
|||||||
/** Derived Colors from the Base Color **/
|
/** Derived Colors from the Base Color **/
|
||||||
{% for i in range(1, 100) %}
|
{% for i in range(1, 100) %}
|
||||||
--color-{{ "%02d"|format(i) }}: {{ global_theming.css.colors.base | adjust_color(target_lightness=(i / 100),saturation_change=global_theming.css.filters.saturation_change,hue_shift=global_theming.css.filters.hue_shift) }};
|
--color-{{ "%02d"|format(i) }}: {{ global_theming.css.colors.base | adjust_color(target_lightness=(i / 100),saturation_change=global_theming.css.filters.saturation_change,hue_shift=global_theming.css.filters.hue_shift) }};
|
||||||
|
--color-rgb-{{ "%02d"|format(i) }}: {{ global_theming.css.colors.base | adjust_color_rgb(target_lightness=(i / 100),saturation_change=global_theming.css.filters.saturation_change,hue_shift=global_theming.css.filters.hue_shift) }};
|
||||||
{% endfor %}
|
{% endfor %}
|
||||||
|
|
||||||
/** Special Action Colors **/
|
/** Special Action Colors **/
|
||||||
@ -25,6 +28,7 @@ HINT: Better overwritte CSS variables instead of individual elements.
|
|||||||
/** Dark Mode Derived Colors from the Base Color **/
|
/** Dark Mode Derived Colors from the Base Color **/
|
||||||
{% for i in range(1, 100) %}
|
{% for i in range(1, 100) %}
|
||||||
--color-{{ "%02d"|format(i) }}: {{ global_theming.css.colors.base | adjust_color(target_lightness=(1 - (i / 100)),saturation_change=global_theming.css.filters.saturation_change,hue_shift=global_theming.css.filters.hue_shift) }};
|
--color-{{ "%02d"|format(i) }}: {{ global_theming.css.colors.base | adjust_color(target_lightness=(1 - (i / 100)),saturation_change=global_theming.css.filters.saturation_change,hue_shift=global_theming.css.filters.hue_shift) }};
|
||||||
|
--color-rgb-{{ "%02d"|format(i) }}: {{ global_theming.css.colors.base | adjust_color_rgb(target_lightness=(1 - (i / 100)),saturation_change=global_theming.css.filters.saturation_change,hue_shift=global_theming.css.filters.hue_shift) }};
|
||||||
{% endfor %}
|
{% endfor %}
|
||||||
|
|
||||||
/** Special Action Colors **/
|
/** Special Action Colors **/
|
||||||
@ -41,20 +45,14 @@ HINT: Better overwritte CSS variables instead of individual elements.
|
|||||||
* @See https://chromewebstore.google.com/detail/dark-mode/dmghijelimhndkbmpgbldicpogfkceaj
|
* @See https://chromewebstore.google.com/detail/dark-mode/dmghijelimhndkbmpgbldicpogfkceaj
|
||||||
*/
|
*/
|
||||||
--native-dark-accent-color: var(--color-60); /* was #a9a9a9 */
|
--native-dark-accent-color: var(--color-60); /* was #a9a9a9 */
|
||||||
--native-dark-bg-blend-mode: multiply;
|
|
||||||
--native-dark-bg-color: var(--color-10); /* was #292929 */
|
--native-dark-bg-color: var(--color-10); /* was #292929 */
|
||||||
--native-dark-bg-image-color: rgba(0, 0, 0, 0.10); /* remains the same, or adjust if needed */
|
--native-dark-bg-image-color: rgba(var(--color-rgb-01), 0.10); /* remains the same, or adjust if needed */
|
||||||
--native-dark-bg-image-filter: brightness(50%) contrast(200%);
|
|
||||||
--native-dark-border-color: var(--color-40); /* was #555555 */
|
--native-dark-border-color: var(--color-40); /* was #555555 */
|
||||||
--native-dark-box-shadow: 0 0 0 1px rgb(255 255 255 / 10%);
|
--native-dark-box-shadow: 0 0 0 1px rgb(var(--color-rgb-99), / 10%);
|
||||||
--native-dark-brightness: 0.85;
|
|
||||||
--native-dark-cite-color: var(--color-70); /* was #92de92 – you might adjust if a green tone is needed */
|
--native-dark-cite-color: var(--color-70); /* was #92de92 – you might adjust if a green tone is needed */
|
||||||
--native-dark-fill-color: var(--color-50); /* was #7d7d7d */
|
--native-dark-fill-color: var(--color-50); /* was #7d7d7d */
|
||||||
--native-dark-font-color: var(--color-95); /* was #dcdcdc */
|
--native-dark-font-color: var(--color-95); /* was #dcdcdc */
|
||||||
--native-dark-link-color: var(--color-80); /* was #8db2e5 */
|
--native-dark-link-color: var(--color-80); /* was #8db2e5 */
|
||||||
--native-dark-opacity: 0.85;
|
|
||||||
--native-dark-text-shadow: none;
|
|
||||||
--native-dark-transparent-color: transparent;
|
|
||||||
--native-dark-visited-link-color: var(--color-85); /* was #c76ed7 */
|
--native-dark-visited-link-color: var(--color-85); /* was #c76ed7 */
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -73,9 +71,7 @@ HINT: Better overwritte CSS variables instead of individual elements.
|
|||||||
}
|
}
|
||||||
|
|
||||||
/* Discourse */
|
/* Discourse */
|
||||||
:root {
|
:root section#main{
|
||||||
--scheme-type: light;
|
|
||||||
|
|
||||||
/* Base Colors */
|
/* Base Colors */
|
||||||
--primary: var(--color-20); /* originally #203243 */
|
--primary: var(--color-20); /* originally #203243 */
|
||||||
--secondary: var(--color-95); /* originally #eef4f7 */
|
--secondary: var(--color-95); /* originally #eef4f7 */
|
||||||
@ -88,26 +84,32 @@ HINT: Better overwritte CSS variables instead of individual elements.
|
|||||||
--highlight: var(--color-70); /* same as header_background */
|
--highlight: var(--color-70); /* same as header_background */
|
||||||
--d-selected: var(--color-85); /* originally #bee0f2 */
|
--d-selected: var(--color-85); /* originally #bee0f2 */
|
||||||
--d-hover: var(--color-90); /* originally #d2efff */
|
--d-hover: var(--color-90); /* originally #d2efff */
|
||||||
|
|
||||||
|
/* Normally refers to secondary. Somehow this reference does not work.*/
|
||||||
|
--d-sidebar-background: var(--color-92);
|
||||||
|
--d-sidebar-footer-fade: var(--color-92);
|
||||||
|
|
||||||
|
|
||||||
|
/* RGB values */
|
||||||
|
--always-black-rgb: var(--color-rgb-01);
|
||||||
|
--primary-rgb: var(--color-rgb-20);
|
||||||
|
--primary-low-rgb: var(--color-rgb-95);
|
||||||
|
--primary-very-low-rgb: var(--color-rgb-99);
|
||||||
|
--secondary-rgb: var(--color-rgb-95);
|
||||||
|
--header_background-rgb: var(--color-rgb-70);
|
||||||
|
--tertiary-rgb: var(--color-rgb-40);
|
||||||
|
--highlight-rgb: var(--color-rgb-70);
|
||||||
|
--success-rgb: var(--color-rgb-50);
|
||||||
|
|
||||||
/* RGB values remain unchanged */
|
|
||||||
--always-black-rgb: 0, 0, 0;
|
|
||||||
--primary-rgb: 32, 50, 67;
|
|
||||||
--primary-low-rgb: 227, 235, 242;
|
|
||||||
--primary-very-low-rgb: 247, 249, 251;
|
|
||||||
--secondary-rgb: 238, 244, 247;
|
|
||||||
--header_background-rgb: 134, 189, 219;
|
|
||||||
--tertiary-rgb: 65, 99, 118;
|
|
||||||
--highlight-rgb: 134, 189, 219;
|
|
||||||
--success-rgb: 112, 219, 130;
|
|
||||||
|
|
||||||
/* Primary Scale */
|
/* Primary Scale */
|
||||||
--primary-very-low: var(--color-100); /* originally #f7f9fb */
|
--primary-very-low: var(--color-99); /* originally #f7f9fb */
|
||||||
--primary-low: var(--color-95); /* originally #e3ebf2 */
|
--primary-low: var(--color-95); /* originally #e3ebf2 */
|
||||||
--primary-low-mid: var(--color-75); /* originally #acc2d7 */
|
--primary-low-mid: var(--color-75); /* originally #acc2d7 */
|
||||||
--primary-medium: var(--color-60); /* originally #7499bd */
|
--primary-medium: var(--color-60); /* originally #7499bd */
|
||||||
--primary-high: var(--color-40); /* originally #487096 */
|
--primary-high: var(--color-40); /* originally #487096 */
|
||||||
--primary-very-high: var(--color-20); /* originally #34516d */
|
--primary-very-high: var(--color-20); /* originally #34516d */
|
||||||
--primary-50: var(--color-100); /* originally #f7f9fb */
|
--primary-50: var(--color-99); /* originally #f7f9fb */
|
||||||
--primary-100: var(--color-95); /* originally #eef3f7 */
|
--primary-100: var(--color-95); /* originally #eef3f7 */
|
||||||
--primary-200: var(--color-90); /* originally #e3ebf2 */
|
--primary-200: var(--color-90); /* originally #e3ebf2 */
|
||||||
--primary-300: var(--color-80); /* originally #c7d6e4 */
|
--primary-300: var(--color-80); /* originally #c7d6e4 */
|
||||||
@ -119,11 +121,11 @@ HINT: Better overwritte CSS variables instead of individual elements.
|
|||||||
--primary-900: var(--color-20); /* originally #34516d */
|
--primary-900: var(--color-20); /* originally #34516d */
|
||||||
|
|
||||||
/* Header Primary Scale */
|
/* Header Primary Scale */
|
||||||
--header_primary-low: var(--color-75); /* rgb(128, 180, 209) */
|
--header_primary-low: rgb(var(--color-rgb-75)); /* rgb(128, 180, 209) */
|
||||||
--header_primary-low-mid: var(--color-70); /* rgb(110, 155, 181) */
|
--header_primary-low-mid: rgb(var(--color-rgb-70)); /* rgb(110, 155, 181) */
|
||||||
--header_primary-medium: var(--color-60); /* rgb(93, 132, 155) */
|
--header_primary-medium: rgb(var(--color-rgb-60)); /* rgb(93, 132, 155) */
|
||||||
--header_primary-high: var(--color-50); /* rgb(78, 112, 132) */
|
--header_primary-high: rgb(var(--color-rgb-50)); /* rgb(78, 112, 132) */
|
||||||
--header_primary-very-high: var(--color-20); /* rgb(52, 76, 94) */
|
--header_primary-very-high: rgb(var(--color-rgb-20)); /* rgb(52, 76, 94) */
|
||||||
|
|
||||||
/* Secondary Scale */
|
/* Secondary Scale */
|
||||||
--secondary-low: var(--color-20); /* originally #2f5163 */
|
--secondary-low: var(--color-20); /* originally #2f5163 */
|
||||||
@ -132,12 +134,12 @@ HINT: Better overwritte CSS variables instead of individual elements.
|
|||||||
--secondary-very-high: var(--color-90); /* originally #d7e5ec */
|
--secondary-very-high: var(--color-90); /* originally #d7e5ec */
|
||||||
|
|
||||||
/* Tertiary Scale */
|
/* Tertiary Scale */
|
||||||
--tertiary-very-low: var(--color-100); /* originally #eaf0f3 */
|
--tertiary-very-low: var(--color-99); /* originally #eaf0f3 */
|
||||||
--tertiary-low: var(--color-95); /* originally #dfe8ee */
|
--tertiary-low: var(--color-95); /* originally #dfe8ee */
|
||||||
--tertiary-medium: var(--color-60); /* originally #96b4c5 */
|
--tertiary-medium: var(--color-60); /* originally #96b4c5 */
|
||||||
--tertiary-high: var(--color-40); /* originally #5886a0 */
|
--tertiary-high: var(--color-40); /* originally #5886a0 */
|
||||||
--tertiary-hover: var(--color-20); /* originally #314a59 */
|
--tertiary-hover: var(--color-20); /* originally #314a59 */
|
||||||
--tertiary-50: var(--color-100); /* originally #eaf0f3 */
|
--tertiary-50: var(--color-99); /* originally #eaf0f3 */
|
||||||
--tertiary-100: var(--color-95); /* originally #e6edf1 */
|
--tertiary-100: var(--color-95); /* originally #e6edf1 */
|
||||||
--tertiary-200: var(--color-90); /* originally #e4ebf0 */
|
--tertiary-200: var(--color-90); /* originally #e4ebf0 */
|
||||||
--tertiary-300: var(--color-85); /* originally #dfe8ee */
|
--tertiary-300: var(--color-85); /* originally #dfe8ee */
|
||||||
@ -158,17 +160,17 @@ HINT: Better overwritte CSS variables instead of individual elements.
|
|||||||
--highlight-high: var(--color-30); /* originally #286688 */
|
--highlight-high: var(--color-30); /* originally #286688 */
|
||||||
|
|
||||||
/* Combination Variables */
|
/* Combination Variables */
|
||||||
--blend-primary-secondary-5: var(--color-95); /* originally rgb(232, 238, 241) */
|
--blend-primary-secondary-5: rgb(var(--color-rgb-95)); /* originally rgb(232, 238, 241) */
|
||||||
--primary-med-or-secondary-med: var(--color-60); /* originally #7499bd */
|
--primary-med-or-secondary-med: var(--color-60); /* originally #7499bd */
|
||||||
--primary-med-or-secondary-high: var(--color-60); /* originally #7499bd */
|
--primary-med-or-secondary-high: var(--color-60); /* originally #7499bd */
|
||||||
--primary-high-or-secondary-low: var(--color-40); /* originally #487096 */
|
--primary-high-or-secondary-low: var(--color-40); /* originally #487096 */
|
||||||
--primary-low-mid-or-secondary-high: var(--color-75); /* originally #acc2d7 */
|
--primary-low-mid-or-secondary-high: var(--color-75); /* originally #acc2d7 */
|
||||||
--primary-low-mid-or-secondary-low: var(--color-75); /* originally #acc2d7 */
|
--primary-low-mid-or-secondary-low: var(--color-75); /* originally #acc2d7 */
|
||||||
--primary-or-primary-low-mid: var(--color-20); /* originally #203243 */
|
--primary-or-primary-low-mid: var(--color-20); /* originally #203243 */
|
||||||
--highlight-low-or-medium: var(--color-90); /* originally #dbebf4 */
|
--highlight-low-or-medium: var(--color-90); /* originally #dbebf4 */
|
||||||
--tertiary-or-tertiary-low: var(--color-40); /* originally #416376 */
|
--tertiary-or-tertiary-low: var(--color-40); /* originally #416376 */
|
||||||
--tertiary-low-or-tertiary-high: var(--color-95); /* originally #dfe8ee */
|
--tertiary-low-or-tertiary-high: var(--color-95); /* originally #dfe8ee */
|
||||||
--tertiary-med-or-tertiary: var(--color-60); /* originally #96b4c5 */
|
--tertiary-med-or-tertiary: var(--color-60); /* originally #96b4c5 */
|
||||||
--secondary-or-primary: var(--color-95); /* originally #eef4f7 */
|
--secondary-or-primary: var(--color-95); /* originally #eef4f7 */
|
||||||
--tertiary-or-white: var(--color-40); /* originally #416376 */
|
--tertiary-or-white: var(--color-40); /* originally #416376 */
|
||||||
|
|
||||||
@ -177,30 +179,307 @@ HINT: Better overwritte CSS variables instead of individual elements.
|
|||||||
--float-kit-arrow-fill-color: var(--secondary); /* already mapped above */
|
--float-kit-arrow-fill-color: var(--secondary); /* already mapped above */
|
||||||
}
|
}
|
||||||
|
|
||||||
/** Keycloak Overrides **/
|
|
||||||
|
/* Keycloak */
|
||||||
:root{
|
:root{
|
||||||
--pf-v5-global--Color--100: var(--color-40);
|
/* --- Palette Black (Graustufen) --- */
|
||||||
--pf-v5-global--Color--200: var(--color-60);
|
--pf-v5-global--palette--black-100: var(--color-95); /* #fafafa */
|
||||||
--pf-v5-global--Color--light-100: var(--color-40);
|
--pf-v5-global--palette--black-150: var(--color-90); /* #f5f5f5 */
|
||||||
--pf-v5-global--Color--light-200: var(--color-60);
|
--pf-v5-global--palette--black-200: var(--color-85); /* #f0f0f0 */
|
||||||
--pf-v5-global--Color--light-300: var(--color-70);
|
--pf-v5-global--palette--black-300: var(--color-75); /* #d2d2d2 */
|
||||||
}
|
--pf-v5-global--palette--black-400: var(--color-65); /* #b8bbbe */
|
||||||
|
--pf-v5-global--palette--black-500: var(--color-50); /* #8a8d90 */
|
||||||
|
--pf-v5-global--palette--black-600: var(--color-40); /* #6a6e73 */
|
||||||
|
--pf-v5-global--palette--black-700: var(--color-30); /* #4f5255 */
|
||||||
|
--pf-v5-global--palette--black-800: var(--color-25); /* #3c3f42 */
|
||||||
|
--pf-v5-global--palette--black-850: var(--color-20); /* #212427 */
|
||||||
|
--pf-v5-global--palette--black-900: var(--color-10); /* #151515 */
|
||||||
|
--pf-v5-global--palette--black-1000: var(--color-05); /* #030303 */
|
||||||
|
|
||||||
|
/* --- White --- */
|
||||||
|
--pf-v5-global--palette--white: var(--color-99);
|
||||||
|
|
||||||
|
/* --- Background Colors --- */
|
||||||
|
--pf-v5-global--BackgroundColor--100: var(--color-99);
|
||||||
|
--pf-v5-global--BackgroundColor--150: var(--color-95);
|
||||||
|
--pf-v5-global--BackgroundColor--200: var(--color-85);
|
||||||
|
--pf-v5-global--BackgroundColor--300: var(--color-75);
|
||||||
|
--pf-v5-global--BackgroundColor--400: var(--color-65);
|
||||||
|
--pf-v5-global--BackgroundColor--light-100: var(--color-99);
|
||||||
|
--pf-v5-global--BackgroundColor--light-200: var(--color-95);
|
||||||
|
--pf-v5-global--BackgroundColor--light-300: var(--color-85);
|
||||||
|
--pf-v5-global--BackgroundColor--dark-100: var(--color-10);
|
||||||
|
--pf-v5-global--BackgroundColor--dark-200: var(--color-25);
|
||||||
|
--pf-v5-global--BackgroundColor--dark-300: var(--color-20);
|
||||||
|
--pf-v5-global--BackgroundColor--dark-400: var(--color-30);
|
||||||
|
--pf-v5-global--BackgroundColor--dark-transparent-100: var(--color-05);
|
||||||
|
--pf-v5-global--BackgroundColor--dark-transparent-200: var(--color-05);
|
||||||
|
|
||||||
|
/* --- Color Variables --- */
|
||||||
|
--pf-v5-global--Color--100: var(--color-10);
|
||||||
|
--pf-v5-global--Color--200: var(--color-40);
|
||||||
|
--pf-v5-global--Color--300: var(--color-25);
|
||||||
|
--pf-v5-global--Color--400: var(--color-50);
|
||||||
|
--pf-v5-global--Color--light-100: var(--color-99);
|
||||||
|
--pf-v5-global--Color--light-200: var(--color-85);
|
||||||
|
--pf-v5-global--Color--light-300: var(--color-75);
|
||||||
|
--pf-v5-global--Color--dark-100: var(--color-10);
|
||||||
|
--pf-v5-global--Color--dark-200: var(--color-40);
|
||||||
|
|
||||||
|
/* --- Active Colors --- */
|
||||||
|
--pf-v5-global--active-color--100: var(--color-65);
|
||||||
|
--pf-v5-global--active-color--200: var(--color-95);
|
||||||
|
--pf-v5-global--active-color--300: var(--color-75);
|
||||||
|
--pf-v5-global--active-color--400: var(--color-85);
|
||||||
|
|
||||||
|
/* --- Disabled Colors --- */
|
||||||
|
--pf-v5-global--disabled-color--100: var(--color-40);
|
||||||
|
--pf-v5-global--disabled-color--200: var(--color-75);
|
||||||
|
--pf-v5-global--disabled-color--300: var(--color-85);
|
||||||
|
|
||||||
|
/* --- Primary Colors --- */
|
||||||
|
--pf-v5-global--primary-color--100: var(--color-65);
|
||||||
|
--pf-v5-global--primary-color--200: var(--color-40);
|
||||||
|
--pf-v5-global--primary-color--light-100: var(--color-75);
|
||||||
|
--pf-v5-global--primary-color--dark-100: var(--color-65);
|
||||||
|
|
||||||
|
/* --- Secondary Colors --- */
|
||||||
|
--pf-v5-global--secondary-color--100: var(--color-40);
|
||||||
|
|
||||||
|
/* --- Custom Colors --- */
|
||||||
|
--pf-v5-global--custom-color--100: var(--color-65);
|
||||||
|
--pf-v5-global--custom-color--200: var(--color-65);
|
||||||
|
--pf-v5-global--custom-color--300: var(--color-30);
|
||||||
|
|
||||||
|
/* --- Link Colors --- */
|
||||||
|
--pf-v5-global--link--Color: var(--color-65);
|
||||||
|
--pf-v5-global--link--Color--hover: var(--color-40);
|
||||||
|
--pf-v5-global--link--Color--light: var(--color-75);
|
||||||
|
--pf-v5-global--link--Color--light--hover: var(--color-85);
|
||||||
|
--pf-v5-global--link--Color--dark: var(--color-65);
|
||||||
|
--pf-v5-global--link--Color--dark--hover: var(--color-40);
|
||||||
|
--pf-v5-global--link--Color--visited: var(--color-40);
|
||||||
|
|
||||||
|
/* --- Border Colors --- */
|
||||||
|
--pf-v5-global--BorderColor--100: var(--color-75);
|
||||||
|
--pf-v5-global--BorderColor--200: var(--color-50);
|
||||||
|
--pf-v5-global--BorderColor--300: var(--color-85);
|
||||||
|
--pf-v5-global--BorderColor--400: var(--color-65);
|
||||||
|
--pf-v5-global--BorderColor--dark-100: var(--color-75);
|
||||||
|
--pf-v5-global--BorderColor--light-100: var(--color-65);
|
||||||
|
|
||||||
|
/* --- Icon Colors --- */
|
||||||
|
--pf-v5-global--icon--Color--light: var(--color-40);
|
||||||
|
--pf-v5-global--icon--Color--dark: var(--color-10);
|
||||||
|
--pf-v5-global--icon--Color--light--light: var(--color-85);
|
||||||
|
--pf-v5-global--icon--Color--dark--light: var(--color-99);
|
||||||
|
--pf-v5-global--icon--Color--light--dark: var(--color-40);
|
||||||
|
--pf-v5-global--icon--Color--dark--dark: var(--color-10);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/* gitea */
|
||||||
|
:root {
|
||||||
|
/* Base and derived colors are now referenced from the computed scale */
|
||||||
|
--color-primary: var(--color-50);
|
||||||
|
--color-primary-contrast: var(--color-99);
|
||||||
|
--color-primary-dark-1: var(--color-48);
|
||||||
|
--color-primary-dark-2: var(--color-47);
|
||||||
|
--color-primary-dark-3: var(--color-46);
|
||||||
|
--color-primary-dark-4: var(--color-45);
|
||||||
|
--color-primary-dark-5: var(--color-44);
|
||||||
|
--color-primary-dark-6: var(--color-43);
|
||||||
|
--color-primary-dark-7: var(--color-42);
|
||||||
|
--color-primary-light-1: var(--color-52);
|
||||||
|
--color-primary-light-2: var(--color-53);
|
||||||
|
--color-primary-light-3: var(--color-54);
|
||||||
|
--color-primary-light-4: var(--color-55);
|
||||||
|
--color-primary-light-5: var(--color-57);
|
||||||
|
--color-primary-light-6: var(--color-59);
|
||||||
|
--color-primary-light-7: var(--color-61);
|
||||||
|
|
||||||
|
/* Alpha variants reference the base RGB variable */
|
||||||
|
--color-primary-alpha-10: rgba(var(--color-rgb-50), 0.10);
|
||||||
|
--color-primary-alpha-20: rgba(var(--color-rgb-50), 0.20);
|
||||||
|
--color-primary-alpha-30: rgba(var(--color-rgb-50), 0.30);
|
||||||
|
--color-primary-alpha-40: rgba(var(--color-rgb-50), 0.40);
|
||||||
|
--color-primary-alpha-50: rgba(var(--color-rgb-50), 0.50);
|
||||||
|
--color-primary-alpha-60: rgba(var(--color-rgb-50), 0.60);
|
||||||
|
--color-primary-alpha-70: rgba(var(--color-rgb-50), 0.70);
|
||||||
|
--color-primary-alpha-80: rgba(var(--color-rgb-50), 0.80);
|
||||||
|
--color-primary-alpha-90: rgba(var(--color-rgb-50), 0.90);
|
||||||
|
|
||||||
|
--color-primary-hover: var(--color-primary-dark-1);
|
||||||
|
--color-primary-active: var(--color-primary-dark-2);
|
||||||
|
|
||||||
|
/* Secondary colors */
|
||||||
|
--color-secondary: var(--color-80);
|
||||||
|
--color-secondary-dark-1: var(--color-78);
|
||||||
|
--color-secondary-dark-2: var(--color-76);
|
||||||
|
--color-secondary-dark-3: var(--color-74);
|
||||||
|
--color-secondary-dark-4: var(--color-72);
|
||||||
|
--color-secondary-dark-5: var(--color-70);
|
||||||
|
--color-secondary-dark-6: var(--color-68);
|
||||||
|
--color-secondary-dark-7: var(--color-66);
|
||||||
|
--color-secondary-dark-8: var(--color-64);
|
||||||
|
--color-secondary-dark-9: var(--color-62);
|
||||||
|
--color-secondary-dark-10: var(--color-60);
|
||||||
|
--color-secondary-dark-11: var(--color-58);
|
||||||
|
--color-secondary-dark-12: var(--color-56);
|
||||||
|
--color-secondary-dark-13: var(--color-54);
|
||||||
|
--color-secondary-light-1: var(--color-92);
|
||||||
|
--color-secondary-light-2: var(--color-93);
|
||||||
|
--color-secondary-light-3: var(--color-94);
|
||||||
|
--color-secondary-light-4: var(--color-95);
|
||||||
|
|
||||||
|
--color-secondary-alpha-10: rgba(var(--color-rgb-80), 0.10);
|
||||||
|
--color-secondary-alpha-20: rgba(var(--color-rgb-80), 0.20);
|
||||||
|
--color-secondary-alpha-30: rgba(var(--color-rgb-80), 0.30);
|
||||||
|
--color-secondary-alpha-40: rgba(var(--color-rgb-80), 0.40);
|
||||||
|
--color-secondary-alpha-50: rgba(var(--color-rgb-80), 0.50);
|
||||||
|
--color-secondary-alpha-60: rgba(var(--color-rgb-80), 0.60);
|
||||||
|
--color-secondary-alpha-70: rgba(var(--color-rgb-80), 0.70);
|
||||||
|
--color-secondary-alpha-80: rgba(var(--color-rgb-80), 0.80);
|
||||||
|
--color-secondary-alpha-90: rgba(var(--color-rgb-80), 0.90);
|
||||||
|
|
||||||
|
--color-secondary-button: var(--color-secondary-dark-4);
|
||||||
|
--color-secondary-hover: var(--color-secondary-dark-5);
|
||||||
|
--color-secondary-active: var(--color-secondary-dark-6);
|
||||||
|
|
||||||
|
/* Console Colors */
|
||||||
|
--color-console-fg: var(--color-98);
|
||||||
|
--color-console-fg-subtle: var(--color-85);
|
||||||
|
--color-console-bg: var(--color-10);
|
||||||
|
--color-console-border: var(--color-40);
|
||||||
|
--color-console-hover-bg: var(--color-42);
|
||||||
|
--color-console-active-bg: var(--color-40);
|
||||||
|
--color-console-menu-bg: var(--color-38);
|
||||||
|
--color-console-menu-border:var(--color-45);
|
||||||
|
|
||||||
|
/* Body, Text, and Miscellaneous Colors */
|
||||||
|
--color-white: var(--color-99);
|
||||||
|
--color-grey: var(--color-60);
|
||||||
|
--color-grey-light: var(--color-65);
|
||||||
|
|
||||||
|
--color-body: var(--color-white);
|
||||||
|
--color-text-dark: var(--color-10);
|
||||||
|
--color-text: var(--color-40);
|
||||||
|
--color-text-light: var(--color-60);
|
||||||
|
--color-text-light-1: var(--color-65);
|
||||||
|
--color-text-light-2: var(--color-70);
|
||||||
|
--color-text-light-3: var(--color-75);
|
||||||
|
|
||||||
|
--color-footer: var(--color-nav-bg);
|
||||||
|
--color-timeline: var(--color-80);
|
||||||
|
|
||||||
|
/* Input Colors */
|
||||||
|
--color-input-text: var(--color-10);
|
||||||
|
--color-input-background: var(--color-white);
|
||||||
|
--color-input-toggle-background: var(--color-80);
|
||||||
|
--color-input-border: var(--color-secondary);
|
||||||
|
--color-input-border-hover: var(--color-secondary-dark-1);
|
||||||
|
|
||||||
|
/* Effects */
|
||||||
|
--color-light: var(--color-05);
|
||||||
|
--color-light-mimic-enabled: rgba(var(--color-rgb-05), calc(6 / 255 * 222 / 255 / 0.55));
|
||||||
|
--color-light-border: var(--color-05);
|
||||||
|
--color-hover: var(--color-05);
|
||||||
|
--color-hover-opaque: var(--color-95);
|
||||||
|
--color-active: var(--color-05);
|
||||||
|
|
||||||
|
/* Menu, Card, and Markup Colors */
|
||||||
|
--color-menu: var(--color-99);
|
||||||
|
--color-card: var(--color-99);
|
||||||
|
--color-markup-table-row: var(--color-01);
|
||||||
|
--color-markup-code-block: var(--color-01);
|
||||||
|
--color-markup-code-inline: var(--color-01);
|
||||||
|
--color-button: var(--color-99);
|
||||||
|
--color-code-bg: var(--color-99);
|
||||||
|
--color-shadow: var(--color-05);
|
||||||
|
--color-shadow-opaque: var(--color-85);
|
||||||
|
--color-secondary-bg: var(--color-95);
|
||||||
|
--color-expand-button: var(--color-98);
|
||||||
|
--color-placeholder-text: var(--color-text-light-3);
|
||||||
|
--color-editor-line-highlight: var(--color-primary-light-6);
|
||||||
|
--color-project-column-bg: var(--color-secondary-light-4);
|
||||||
|
--color-caret: var(--color-10);
|
||||||
|
|
||||||
|
/* Reaction and Tooltip Colors */
|
||||||
|
--color-reaction-bg: var(--color-05);
|
||||||
|
--color-reaction-hover-bg: var(--color-primary-light-5);
|
||||||
|
--color-reaction-active-bg: var(--color-primary-light-6);
|
||||||
|
--color-tooltip-text: var(--color-99);
|
||||||
|
--color-tooltip-bg: var(--color-05);
|
||||||
|
|
||||||
|
/* Navigation Colors */
|
||||||
|
--color-nav-bg: var(--color-99);
|
||||||
|
--color-nav-hover-bg: var(--color-secondary-light-1);
|
||||||
|
--color-nav-text: var(--color-40);
|
||||||
|
--color-secondary-nav-bg: var(--color-99);
|
||||||
|
|
||||||
|
/* Label and Accent Colors */
|
||||||
|
--color-label-text: var(--color-40);
|
||||||
|
--color-label-bg: var(--color-50);
|
||||||
|
--color-label-hover-bg: var(--color-60);
|
||||||
|
--color-label-active-bg: var(--color-70);
|
||||||
|
--color-accent: var(--color-primary-light-1);
|
||||||
|
--color-small-accent: var(--color-primary-light-6);
|
||||||
|
--color-highlight-fg: var(--color-10);
|
||||||
|
--color-highlight-bg: var(--color-99);
|
||||||
|
--color-overlay-backdrop: var(--color-05);
|
||||||
|
}
|
||||||
|
|
||||||
/** Mastodon Overrides **/
|
/** Mastodon Overrides **/
|
||||||
:root{
|
div#mastodon, div#admin-wrapper {
|
||||||
--surface-variant-background-color: var(--color-80);
|
/* Dropdown */
|
||||||
|
--dropdown-border-color: var(--color-35);
|
||||||
|
--dropdown-background-color: rgba(var(--color-rgb-03), 0.9);
|
||||||
|
--dropdown-shadow: 0 20px 25px -5px rgba(var(--color-rgb-01), 0.25),
|
||||||
|
0 8px 10px -6px rgba(var(--color-rgb-01), 0.25);
|
||||||
|
|
||||||
|
/* Modal */
|
||||||
|
--modal-background-color: rgba(var(--color-rgb-03), 0.7);
|
||||||
|
--modal-background-variant-color: rgba(var(--color-rgb-05), 0.7);
|
||||||
|
--modal-border-color: var(--color-35);
|
||||||
|
|
||||||
|
/* Background */
|
||||||
|
--background-border-color: var(--color-82);
|
||||||
|
--background-filter: blur(10px) saturate(180%) contrast(75%) brightness(70%);
|
||||||
|
--background-color: var(--color-93);
|
||||||
|
--background-color-tint: rgba(var(--color-rgb-03), 0.9);
|
||||||
|
|
||||||
|
/* Surface */
|
||||||
|
--surface-background-color: var(--color-90);
|
||||||
|
--surface-variant-background-color: var(--color-89);
|
||||||
|
--surface-variant-active-background-color: var(--color-35);
|
||||||
|
--on-surface-color: rgba(var(--color-rgb-05), 0.5);
|
||||||
|
|
||||||
|
/* Media & Overlay */
|
||||||
|
--media-outline-color: rgba(var(--color-rgb-99), 0.15);
|
||||||
|
--overlay-icon-shadow: drop-shadow(0 0 8px rgba(var(--color-rgb-01), 0.25));
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Modal Overwrittes */
|
||||||
|
div.modal div.modal-content {
|
||||||
|
/* Colors – adjusted to the existing scheme */
|
||||||
|
--bs-modal-color: var(--color-21); /* Text color: dark contrast against the light modal background */
|
||||||
|
--bs-modal-bg: var(--color-82); /* Background color, as desired */
|
||||||
|
--bs-modal-border-color: var(--color-82); /* A slightly darker border than the background */
|
||||||
|
--bs-modal-header-border-color: var(--color-87); /* Same shade as the modal border */
|
||||||
|
--bs-modal-footer-bg: var(--color-87); /* A slightly offset footer background (a bit darker than the main area) */
|
||||||
|
--bs-modal-footer-border-color: var(--color-87);
|
||||||
}
|
}
|
||||||
|
|
||||||
/** Nextcloud Specific**/
|
/** Nextcloud Specific**/
|
||||||
:root{
|
:root{
|
||||||
--color-main-background: None;
|
--color-main-background: var(--color-84);
|
||||||
--color-main-background-rgb: None;
|
--color-main-background-rgb: rgba(var(--color-rgb-84),0.83);
|
||||||
--color-primary-element: var(--color-80);
|
--color-primary-element: var(--color-80);
|
||||||
--color-main-text: var(--color-40);
|
--color-main-text: var(--color-40);
|
||||||
--color-background-hover: var(--color-65);
|
--color-background-hover: var(--color-65);
|
||||||
|
|
||||||
/** Calendar **/
|
/** Calendar **/
|
||||||
--color-background-dark: var(--info-color); /** Days which aren't in the current month **/
|
--color-background-dark: var(--color-73); /** Days which aren't in the current month **/
|
||||||
--color-primary-element-light: var(--color-65);
|
--color-primary-element-light: var(--color-65);
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -214,7 +493,7 @@ HINT: Better overwritte CSS variables instead of individual elements.
|
|||||||
:root {
|
:root {
|
||||||
/* Base Colors */
|
/* Base Colors */
|
||||||
--light: var(--color-05); /* Very dark (was #000) */
|
--light: var(--color-05); /* Very dark (was #000) */
|
||||||
--dark: var(--color-100); /* Very light (was #fff) */
|
--dark: var(--color-99); /* Very light (was #fff) */
|
||||||
|
|
||||||
/* Backgrounds */
|
/* Backgrounds */
|
||||||
--body-bg: var(--color-05); /* Main background: very dark */
|
--body-bg: var(--color-05); /* Main background: very dark */
|
||||||
@ -246,237 +525,26 @@ HINT: Better overwritte CSS variables instead of individual elements.
|
|||||||
--dropdown-item-active-color: var(--color-99);/* Active state: very light (white) */
|
--dropdown-item-active-color: var(--color-99);/* Active state: very light (white) */
|
||||||
}
|
}
|
||||||
|
|
||||||
/* Keycloak */
|
|
||||||
:root{
|
|
||||||
/* --- Palette Black (Graustufen) --- */
|
|
||||||
--pf-v5-global--palette--black-100: var(--color-95); /* #fafafa */
|
|
||||||
--pf-v5-global--palette--black-150: var(--color-90); /* #f5f5f5 */
|
|
||||||
--pf-v5-global--palette--black-200: var(--color-85); /* #f0f0f0 */
|
|
||||||
--pf-v5-global--palette--black-300: var(--color-75); /* #d2d2d2 */
|
|
||||||
--pf-v5-global--palette--black-400: var(--color-65); /* #b8bbbe */
|
|
||||||
--pf-v5-global--palette--black-500: var(--color-50); /* #8a8d90 */
|
|
||||||
--pf-v5-global--palette--black-600: var(--color-40); /* #6a6e73 */
|
|
||||||
--pf-v5-global--palette--black-700: var(--color-30); /* #4f5255 */
|
|
||||||
--pf-v5-global--palette--black-800: var(--color-25); /* #3c3f42 */
|
|
||||||
--pf-v5-global--palette--black-850: var(--color-20); /* #212427 */
|
|
||||||
--pf-v5-global--palette--black-900: var(--color-10); /* #151515 */
|
|
||||||
--pf-v5-global--palette--black-1000: var(--color-05); /* #030303 */
|
|
||||||
|
|
||||||
/* --- Blue Palette --- */
|
|
||||||
--pf-v5-global--palette--blue-50: var(--color-98); /* #e7f1fa */
|
|
||||||
--pf-v5-global--palette--blue-100: var(--color-95); /* #bee1f4 */
|
|
||||||
--pf-v5-global--palette--blue-200: var(--color-85); /* #73bcf7 */
|
|
||||||
--pf-v5-global--palette--blue-300: var(--color-75); /* #2b9af3 */
|
|
||||||
--pf-v5-global--palette--blue-400: var(--color-65); /* #06c */
|
|
||||||
--pf-v5-global--palette--blue-500: var(--color-40); /* #004080 */
|
|
||||||
--pf-v5-global--palette--blue-600: var(--color-30); /* #002952 */
|
|
||||||
--pf-v5-global--palette--blue-700: var(--color-10); /* #001223 */
|
|
||||||
|
|
||||||
/* --- Cyan Palette --- */
|
|
||||||
--pf-v5-global--palette--cyan-50: var(--color-98); /* #f2f9f9 */
|
|
||||||
--pf-v5-global--palette--cyan-100: var(--color-85); /* #a2d9d9 */
|
|
||||||
--pf-v5-global--palette--cyan-200: var(--color-75); /* #73c5c5 */
|
|
||||||
--pf-v5-global--palette--cyan-300: var(--color-65); /* #009596 */
|
|
||||||
--pf-v5-global--palette--cyan-400: var(--color-40); /* #005f60 */
|
|
||||||
--pf-v5-global--palette--cyan-500: var(--color-30); /* #003737 */
|
|
||||||
--pf-v5-global--palette--cyan-600: var(--color-20); /* #002323 */
|
|
||||||
--pf-v5-global--palette--cyan-700: var(--color-10); /* #000f0f */
|
|
||||||
|
|
||||||
/* --- Gold Palette --- */
|
|
||||||
--pf-v5-global--palette--gold-50: var(--color-98); /* #fdf7e7 */
|
|
||||||
--pf-v5-global--palette--gold-100: var(--color-90); /* #f9e0a2 */
|
|
||||||
--pf-v5-global--palette--gold-200: var(--color-80); /* #f6d173 */
|
|
||||||
--pf-v5-global--palette--gold-300: var(--color-70); /* #f4c145 */
|
|
||||||
--pf-v5-global--palette--gold-400: var(--color-60); /* #f0ab00 */
|
|
||||||
--pf-v5-global--palette--gold-500: var(--color-50); /* #c58c00 */
|
|
||||||
--pf-v5-global--palette--gold-600: var(--color-40); /* #795600 */
|
|
||||||
--pf-v5-global--palette--gold-700: var(--color-30); /* #3d2c00 */
|
|
||||||
|
|
||||||
/* --- Green Palette --- */
|
|
||||||
--pf-v5-global--palette--green-50: var(--color-98); /* #f3faf2 */
|
|
||||||
--pf-v5-global--palette--green-100: var(--color-85); /* #bde5b8 */
|
|
||||||
--pf-v5-global--palette--green-200: var(--color-75); /* #95d58e */
|
|
||||||
--pf-v5-global--palette--green-300: var(--color-65); /* #6ec664 */
|
|
||||||
--pf-v5-global--palette--green-400: var(--color-60); /* #5ba352 */
|
|
||||||
--pf-v5-global--palette--green-500: var(--color-50); /* #3e8635 */
|
|
||||||
--pf-v5-global--palette--green-600: var(--color-40); /* #1e4f18 */
|
|
||||||
--pf-v5-global--palette--green-700: var(--color-20); /* #0f280d */
|
|
||||||
|
|
||||||
/* --- Light Blue Palette --- */
|
|
||||||
--pf-v5-global--palette--light-blue-100: var(--color-95); /* #beedf9 */
|
|
||||||
--pf-v5-global--palette--light-blue-200: var(--color-85); /* #7cdbf3 */
|
|
||||||
--pf-v5-global--palette--light-blue-300: var(--color-75); /* #35caed */
|
|
||||||
--pf-v5-global--palette--light-blue-400: var(--color-65); /* #00b9e4 */
|
|
||||||
--pf-v5-global--palette--light-blue-500: var(--color-50); /* #008bad */
|
|
||||||
--pf-v5-global--palette--light-blue-600: var(--color-40); /* #005c73 */
|
|
||||||
--pf-v5-global--palette--light-blue-700: var(--color-20); /* #002d39 */
|
|
||||||
|
|
||||||
/* --- Light Green Palette --- */
|
|
||||||
--pf-v5-global--palette--light-green-100: var(--color-95); /* #e4f5bc */
|
|
||||||
--pf-v5-global--palette--light-green-200: var(--color-85); /* #c8eb79 */
|
|
||||||
--pf-v5-global--palette--light-green-300: var(--color-75); /* #ace12e */
|
|
||||||
--pf-v5-global--palette--light-green-400: var(--color-65); /* #92d400 */
|
|
||||||
--pf-v5-global--palette--light-green-500: var(--color-50); /* #6ca100 */
|
|
||||||
--pf-v5-global--palette--light-green-600: var(--color-40); /* #486b00 */
|
|
||||||
--pf-v5-global--palette--light-green-700: var(--color-20); /* #253600 */
|
|
||||||
|
|
||||||
/* --- Orange Palette --- */
|
|
||||||
--pf-v5-global--palette--orange-50: var(--color-98); /* #fff6ec */
|
|
||||||
--pf-v5-global--palette--orange-100: var(--color-85); /* #f4b678 */
|
|
||||||
--pf-v5-global--palette--orange-200: var(--color-75); /* #ef9234 */
|
|
||||||
--pf-v5-global--palette--orange-300: var(--color-65); /* #ec7a08 */
|
|
||||||
--pf-v5-global--palette--orange-400: var(--color-50); /* #c46100 */
|
|
||||||
--pf-v5-global--palette--orange-500: var(--color-40); /* #8f4700 */
|
|
||||||
--pf-v5-global--palette--orange-600: var(--color-30); /* #773d00 */
|
|
||||||
--pf-v5-global--palette--orange-700: var(--color-20); /* #3b1f00 */
|
|
||||||
|
|
||||||
/* --- Purple Palette --- */
|
|
||||||
--pf-v5-global--palette--purple-50: var(--color-98); /* #f2f0fc */
|
|
||||||
--pf-v5-global--palette--purple-100: var(--color-90); /* #cbc1ff */
|
|
||||||
--pf-v5-global--palette--purple-200: var(--color-80); /* #b2a3ff */
|
|
||||||
--pf-v5-global--palette--purple-300: var(--color-70); /* #a18fff */
|
|
||||||
--pf-v5-global--palette--purple-400: var(--color-60); /* #8476d1 */
|
|
||||||
--pf-v5-global--palette--purple-500: var(--color-50); /* #6753ac */
|
|
||||||
--pf-v5-global--palette--purple-600: var(--color-40); /* #40199a */
|
|
||||||
--pf-v5-global--palette--purple-700: var(--color-20); /* #1f0066 */
|
|
||||||
|
|
||||||
/* --- Red Palette --- */
|
|
||||||
--pf-v5-global--palette--red-50: var(--color-98); /* #faeae8 */
|
|
||||||
--pf-v5-global--palette--red-100: var(--color-70); /* #c9190b */
|
|
||||||
--pf-v5-global--palette--red-200: var(--color-50); /* #a30000 */
|
|
||||||
--pf-v5-global--palette--red-300: var(--color-40); /* #7d1007 */
|
|
||||||
--pf-v5-global--palette--red-400: var(--color-30); /* #470000 */
|
|
||||||
--pf-v5-global--palette--red-500: var(--color-20); /* #2c0000 */
|
|
||||||
|
|
||||||
/* --- White --- */
|
|
||||||
--pf-v5-global--palette--white: var(--color-99);
|
|
||||||
|
|
||||||
/* --- Background Colors --- */
|
|
||||||
--pf-v5-global--BackgroundColor--100: var(--color-99);
|
|
||||||
--pf-v5-global--BackgroundColor--150: var(--color-95);
|
|
||||||
--pf-v5-global--BackgroundColor--200: var(--color-85);
|
|
||||||
--pf-v5-global--BackgroundColor--300: var(--color-75);
|
|
||||||
--pf-v5-global--BackgroundColor--400: var(--color-65);
|
|
||||||
--pf-v5-global--BackgroundColor--light-100: var(--color-100);
|
|
||||||
--pf-v5-global--BackgroundColor--light-200: var(--color-95);
|
|
||||||
--pf-v5-global--BackgroundColor--light-300: var(--color-85);
|
|
||||||
--pf-v5-global--BackgroundColor--dark-100: var(--color-10);
|
|
||||||
--pf-v5-global--BackgroundColor--dark-200: var(--color-25);
|
|
||||||
--pf-v5-global--BackgroundColor--dark-300: var(--color-20);
|
|
||||||
--pf-v5-global--BackgroundColor--dark-400: var(--color-30);
|
|
||||||
--pf-v5-global--BackgroundColor--dark-transparent-100: var(--color-05);
|
|
||||||
--pf-v5-global--BackgroundColor--dark-transparent-200: var(--color-05);
|
|
||||||
|
|
||||||
/* --- Color Variables --- */
|
|
||||||
--pf-v5-global--Color--100: var(--color-10);
|
|
||||||
--pf-v5-global--Color--200: var(--color-40);
|
|
||||||
--pf-v5-global--Color--300: var(--color-25);
|
|
||||||
--pf-v5-global--Color--400: var(--color-50);
|
|
||||||
--pf-v5-global--Color--light-100: var(--color-100);
|
|
||||||
--pf-v5-global--Color--light-200: var(--color-85);
|
|
||||||
--pf-v5-global--Color--light-300: var(--color-75);
|
|
||||||
--pf-v5-global--Color--dark-100: var(--color-10);
|
|
||||||
--pf-v5-global--Color--dark-200: var(--color-40);
|
|
||||||
|
|
||||||
/* --- Active Colors --- */
|
|
||||||
--pf-v5-global--active-color--100: var(--color-65);
|
|
||||||
--pf-v5-global--active-color--200: var(--color-95);
|
|
||||||
--pf-v5-global--active-color--300: var(--color-75);
|
|
||||||
--pf-v5-global--active-color--400: var(--color-85);
|
|
||||||
|
|
||||||
/* --- Disabled Colors --- */
|
|
||||||
--pf-v5-global--disabled-color--100: var(--color-40);
|
|
||||||
--pf-v5-global--disabled-color--200: var(--color-75);
|
|
||||||
--pf-v5-global--disabled-color--300: var(--color-85);
|
|
||||||
|
|
||||||
/* --- Primary Colors --- */
|
|
||||||
--pf-v5-global--primary-color--100: var(--color-65);
|
|
||||||
--pf-v5-global--primary-color--200: var(--color-40);
|
|
||||||
--pf-v5-global--primary-color--light-100: var(--color-75);
|
|
||||||
--pf-v5-global--primary-color--dark-100: var(--color-65);
|
|
||||||
|
|
||||||
/* --- Secondary Colors --- */
|
|
||||||
--pf-v5-global--secondary-color--100: var(--color-40);
|
|
||||||
|
|
||||||
/* --- Custom Colors --- */
|
|
||||||
--pf-v5-global--custom-color--100: var(--color-65);
|
|
||||||
--pf-v5-global--custom-color--200: var(--color-65);
|
|
||||||
--pf-v5-global--custom-color--300: var(--color-30);
|
|
||||||
|
|
||||||
/* --- Success Colors --- */
|
|
||||||
--pf-v5-global--success-color--100: var(--color-50);
|
|
||||||
--pf-v5-global--success-color--200: var(--color-40);
|
|
||||||
|
|
||||||
/* --- Info Colors --- */
|
|
||||||
--pf-v5-global--info-color--100: var(--color-75);
|
|
||||||
--pf-v5-global--info-color--200: var(--color-30);
|
|
||||||
|
|
||||||
/* --- Warning Colors --- */
|
|
||||||
--pf-v5-global--warning-color--100: var(--color-60);
|
|
||||||
--pf-v5-global--warning-color--200: var(--color-40);
|
|
||||||
|
|
||||||
/* --- Danger Colors --- */
|
|
||||||
--pf-v5-global--danger-color--100: var(--color-70);
|
|
||||||
--pf-v5-global--danger-color--200: var(--color-50);
|
|
||||||
--pf-v5-global--danger-color--300: var(--color-30);
|
|
||||||
|
|
||||||
/* --- Link Colors --- */
|
|
||||||
--pf-v5-global--link--Color: var(--color-65);
|
|
||||||
--pf-v5-global--link--Color--hover: var(--color-40);
|
|
||||||
--pf-v5-global--link--Color--light: var(--color-75);
|
|
||||||
--pf-v5-global--link--Color--light--hover: var(--color-85);
|
|
||||||
--pf-v5-global--link--Color--dark: var(--color-65);
|
|
||||||
--pf-v5-global--link--Color--dark--hover: var(--color-40);
|
|
||||||
--pf-v5-global--link--Color--visited: var(--color-40);
|
|
||||||
|
|
||||||
/* --- Border Colors --- */
|
|
||||||
--pf-v5-global--BorderColor--100: var(--color-75);
|
|
||||||
--pf-v5-global--BorderColor--200: var(--color-50);
|
|
||||||
--pf-v5-global--BorderColor--300: var(--color-85);
|
|
||||||
--pf-v5-global--BorderColor--400: var(--color-65);
|
|
||||||
--pf-v5-global--BorderColor--dark-100: var(--color-75);
|
|
||||||
--pf-v5-global--BorderColor--light-100: var(--color-65);
|
|
||||||
|
|
||||||
/* --- Icon Colors --- */
|
|
||||||
--pf-v5-global--icon--Color--light: var(--color-40);
|
|
||||||
--pf-v5-global--icon--Color--dark: var(--color-10);
|
|
||||||
--pf-v5-global--icon--Color--light--light: var(--color-85);
|
|
||||||
--pf-v5-global--icon--Color--dark--light: var(--color-100);
|
|
||||||
--pf-v5-global--icon--Color--light--dark: var(--color-40);
|
|
||||||
--pf-v5-global--icon--Color--dark--dark: var(--color-10);
|
|
||||||
}
|
|
||||||
|
|
||||||
/* Wordpress */
|
|
||||||
:root {
|
|
||||||
--wp--preset--color--black: var(--color-05);
|
|
||||||
--wp--preset--color--contrast: var(--color-22);
|
|
||||||
--wp--preset--color--contrast-2: var(--color-40);
|
|
||||||
--wp--preset--color--contrast-3: var(--color-50);
|
|
||||||
--wp--preset--color--base: var(--color-90);
|
|
||||||
--wp--preset--color--base-2: var(--color-95);
|
|
||||||
--wp--preset--color--white: var(--color-99);
|
|
||||||
}
|
|
||||||
|
|
||||||
/* Global Defaults (Colors Only) */
|
/* Global Defaults (Colors Only) */
|
||||||
body, html[native-dark-active] {
|
body, html[native-dark-active] {
|
||||||
background-color: var(--color-93) !important;
|
background-color: var(--color-93);
|
||||||
background-image: none !important;
|
background-image: none;
|
||||||
color: var(--color-40) !important;
|
color: var(--color-40);
|
||||||
/* Use the corporate-design font family */
|
/* Use the corporate-design font family */
|
||||||
font-family: "Liberation Sans", Arial, sans-serif;
|
font-family: "Liberation Sans", Arial, sans-serif;
|
||||||
}
|
}
|
||||||
|
|
||||||
/* Links (Color Only) */
|
/* Links (Color Only) */
|
||||||
a {
|
a {
|
||||||
color: var(--color-50) !important;
|
color: var(--color-50);
|
||||||
}
|
}
|
||||||
|
|
||||||
/* Buttons (Background, Text, Border, and Shadow)
|
/* Buttons (Background, Text, Border, and Shadow)
|
||||||
Now using a button background that is only slightly darker than the overall background */
|
Now using a button background that is only slightly darker than the overall background */
|
||||||
html[native-dark-active] button, html[native-dark-active] .btn, button, .btn {
|
html[native-dark-active] button, html[native-dark-active] .btn, button, .btn {
|
||||||
background-color: var(--color-87) !important;
|
background-color: var(--color-87);
|
||||||
color: var(--color-50) !important;
|
color: var(--color-50);
|
||||||
border-color: var(--color-80) !important;
|
border-color: var(--color-80);
|
||||||
cursor: pointer;
|
cursor: pointer;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -484,6 +552,33 @@ button:hover, .btn:hover {
|
|||||||
filter: brightness(0.9);
|
filter: brightness(0.9);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/* Inputs & Forms in Light Mode (Using a Light Tone from the Corporate Design) */
|
||||||
|
input, textarea, select {
|
||||||
|
background-color: var(--color-82); /* Instead of var(--color-90) */
|
||||||
|
color: var(--color-40);
|
||||||
|
border-color: var(--color-70);
|
||||||
|
}
|
||||||
|
input:focus, textarea:focus, select:focus {
|
||||||
|
border-color: var(--color-50);
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Tables (Borders and Header Colors) */
|
||||||
|
th, td {
|
||||||
|
border-color: var(--color-70) !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
thead {
|
||||||
|
background-color: var(--color-80) !important;
|
||||||
|
color: var(--color-40) !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Headings (Text Color) */
|
||||||
|
h1, h2, h3, h4, h5, h6, p{
|
||||||
|
color: var(--color-10) !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Bootstrap */
|
||||||
|
|
||||||
/* States: Success, Warning, Error, Info (Background and Text Colors) */
|
/* States: Success, Warning, Error, Info (Background and Text Colors) */
|
||||||
.success, .alert-success {
|
.success, .alert-success {
|
||||||
background-color: var(--success-color) !important;
|
background-color: var(--success-color) !important;
|
||||||
@ -502,21 +597,11 @@ button:hover, .btn:hover {
|
|||||||
color: var(--color-40) !important;
|
color: var(--color-40) !important;
|
||||||
}
|
}
|
||||||
|
|
||||||
/* Inputs & Forms in Light Mode (Using a Light Tone from the Corporate Design) */
|
|
||||||
input, textarea, select {
|
|
||||||
background-color: var(--color-82) !important; /* Instead of var(--color-90) */
|
|
||||||
color: var(--color-40) !important;
|
|
||||||
border-color: var(--color-70) !important;
|
|
||||||
}
|
|
||||||
input:focus, textarea:focus, select:focus {
|
|
||||||
border-color: var(--color-50) !important;
|
|
||||||
}
|
|
||||||
|
|
||||||
/* Navigation (Background and Text Colors) */
|
/* Navigation (Background and Text Colors) */
|
||||||
.navbar, .navbar-light, .navbar-dark {
|
.navbar, .navbar-light, .navbar-dark {
|
||||||
background-color: var(--color-90) !important;
|
background-color: var(--color-90) !important;
|
||||||
color: var(--color-50) !important;
|
color: var(--color-50) !important;
|
||||||
border-color: var(--color-85) !important;
|
border-color: var(--color-85) !important;
|
||||||
}
|
}
|
||||||
|
|
||||||
.navbar a {
|
.navbar a {
|
||||||
@ -527,20 +612,6 @@ input:focus, textarea:focus, select:focus {
|
|||||||
color: var(--color-40) !important;
|
color: var(--color-40) !important;
|
||||||
}
|
}
|
||||||
|
|
||||||
.card-body {
|
|
||||||
color: var(--color-40) !important;
|
|
||||||
}
|
|
||||||
|
|
||||||
/* Tables (Borders and Header Colors) */
|
|
||||||
th, td {
|
|
||||||
border-color: var(--color-70) !important;
|
|
||||||
}
|
|
||||||
|
|
||||||
thead {
|
|
||||||
background-color: var(--color-80) !important;
|
|
||||||
color: var(--color-40) !important;
|
|
||||||
}
|
|
||||||
|
|
||||||
/* Cards / Containers (Background, Border, and Shadow)
|
/* Cards / Containers (Background, Border, and Shadow)
|
||||||
Cards now use a slightly lighter background and a bold, clear shadow */
|
Cards now use a slightly lighter background and a bold, clear shadow */
|
||||||
.card {
|
.card {
|
||||||
@ -548,9 +619,8 @@ thead {
|
|||||||
border-color: var(--color-85) !important;
|
border-color: var(--color-85) !important;
|
||||||
}
|
}
|
||||||
|
|
||||||
/* Headings (Text Color) */
|
.card-body {
|
||||||
h1, h2, h3, h4, h5, h6, p{
|
color: var(--color-40) !important;
|
||||||
color: var(--color-10) !important;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/* Dropdown Menu and Submenu (Background, Text, and Shadow) */
|
/* Dropdown Menu and Submenu (Background, Text, and Shadow) */
|
||||||
@ -571,11 +641,6 @@ h1, h2, h3, h4, h5, h6, p{
|
|||||||
color: var(--color-40) !important;
|
color: var(--color-40) !important;
|
||||||
}
|
}
|
||||||
|
|
||||||
/* Ensure the button itself uses the light text color. Occurred in Mastodon */
|
|
||||||
button.icon-button {
|
|
||||||
color: var(--color-99) !important;
|
|
||||||
}
|
|
||||||
|
|
||||||
/* Keycloak Header */
|
/* Keycloak Header */
|
||||||
div#app header, div#app header *{
|
div#app header, div#app header *{
|
||||||
background-color: var(--color-60) !important;
|
background-color: var(--color-60) !important;
|
||||||
@ -593,25 +658,10 @@ div#app header, div#app header *{
|
|||||||
background-color: var(--color-90) !important;
|
background-color: var(--color-90) !important;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
/** Mastodon Specific **/
|
|
||||||
div#mastodon div.compose-panel div.compose-form__highlightable{
|
|
||||||
background-color: var(--color-90) !important;
|
|
||||||
}
|
|
||||||
|
|
||||||
div#mastodon strong{
|
|
||||||
color: var(--color-40) !important;
|
|
||||||
}
|
|
||||||
|
|
||||||
/** Nextcloud specific **/
|
/** Nextcloud specific **/
|
||||||
html.ng-csp header#header{
|
html.ng-csp header#header{
|
||||||
color: var(--color-90) !important;
|
color: var(--color-90) !important;
|
||||||
background-color: var(--color-80) !important;
|
background-color: var(--color-80) !important;
|
||||||
}
|
|
||||||
|
|
||||||
html.ng-csp button.files-list__row-name-link, html.ng-csp button.button-vue{
|
|
||||||
background-color: transparent !important;
|
|
||||||
color: var(--color-80) !important;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
html.ng-csp div#postsetupchecks ul.warnings{
|
html.ng-csp div#postsetupchecks ul.warnings{
|
||||||
@ -622,8 +672,36 @@ html.ng-csp div#postsetupchecks ul.info{
|
|||||||
background-color: transparent !important;
|
background-color: transparent !important;
|
||||||
}
|
}
|
||||||
|
|
||||||
div#content-vue p, div#content-vue span{
|
div#mastodon .column-link{
|
||||||
color: var(--color-40) !important;
|
color: var(--color-55);
|
||||||
|
}
|
||||||
|
|
||||||
|
div#mastodon .column-back-button {
|
||||||
|
color: var(--color-58);
|
||||||
|
}
|
||||||
|
|
||||||
|
div#mastodon textarea, div#mastodon input, div#mastodon .compose-form__highlightable {
|
||||||
|
background-color: var(--color-89);
|
||||||
|
color: var(--color-19);
|
||||||
|
}
|
||||||
|
|
||||||
|
div#mastodon .status-card__title, div#mastodon .display-name strong{
|
||||||
|
color: var(--color-33);
|
||||||
|
}
|
||||||
|
|
||||||
|
div#mastodon a.unhandled-link, div#mastodon .dropdown-button, div#mastodon .status__content a, div#mastodon .status-card__author{
|
||||||
|
color: var(--color-29);
|
||||||
|
}
|
||||||
|
div#mastodon .dropdown-button{
|
||||||
|
border: 1px solid #8c8dff;
|
||||||
|
}
|
||||||
|
|
||||||
|
div#mastodon .button, div#mastodon .button:active, div#mastodon .button:focus, div#mastodon .button:hover{
|
||||||
|
background-color: var(--color-71);
|
||||||
|
}
|
||||||
|
|
||||||
|
.compose-form__actions .icon-button {
|
||||||
|
color: var(--color-28);
|
||||||
}
|
}
|
||||||
|
|
||||||
/** OpenProject **/
|
/** OpenProject **/
|
||||||
@ -662,8 +740,3 @@ div.master, div.kanban-header, div.kanban-table-inner, section.kanban button,a.d
|
|||||||
section.kanban h1, section.kanban h2{
|
section.kanban h1, section.kanban h2{
|
||||||
color: var(--color-40) !important;
|
color: var(--color-40) !important;
|
||||||
}
|
}
|
||||||
|
|
||||||
/* Wordpress */
|
|
||||||
.has-contrast-background-color{
|
|
||||||
color: var(--color-90) !important;
|
|
||||||
}
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user