mirror of
https://codeberg.org/forgejo/forgejo.git
synced 2026-05-13 22:40:24 +00:00
Related issue: https://codeberg.org/forgejo/forgejo/issues/8581 This should be a nice first step towards RTL support. Future PRs can look at updating the tailwind classes, changing some of the icons (arrow left might need to become arrow right in some cases for example, and updating the template files) Reviewed-on: https://codeberg.org/forgejo/forgejo/pulls/12491 Reviewed-by: 0ko <0ko@noreply.codeberg.org>
186 lines
4.2 KiB
CSS
186 lines
4.2 KiB
CSS
/* Copyright 2017-2022 atomiks. All rights reserved.
|
|
* Copyright 2022-2024 The Gitea Authors. All rights reserved.
|
|
* Copyright 2024 The Forgejo Authors. All rights reserved.
|
|
* SPDX-License-Identifier: MIT */
|
|
|
|
/* styles are based on node_modules/tippy.js/dist/tippy.css */
|
|
|
|
/* class to hide tippy target elements on page load */
|
|
.tippy-target {
|
|
display: none !important;
|
|
}
|
|
|
|
/* show target element once it's been moved by tippy.js */
|
|
.tippy-content .tippy-target {
|
|
display: unset !important;
|
|
}
|
|
|
|
[data-tippy-root] {
|
|
max-width: calc(100vw - 32px);
|
|
}
|
|
|
|
.tippy-box {
|
|
position: relative;
|
|
background-color: var(--color-body);
|
|
color: var(--color-secondary-dark-6);
|
|
border: 1px solid var(--color-secondary);
|
|
border-radius: var(--border-radius);
|
|
font-size: 1rem;
|
|
}
|
|
|
|
.tippy-content {
|
|
position: relative;
|
|
padding: 1rem; /* if you need different padding, use different data-theme */
|
|
z-index: 1;
|
|
}
|
|
|
|
/* bare theme, no styling at all, except box-shadow */
|
|
.tippy-box[data-theme="bare"] {
|
|
border: none;
|
|
box-shadow: 0 6px 18px var(--color-shadow);
|
|
}
|
|
|
|
.tippy-box[data-theme="bare"] .tippy-content {
|
|
padding: 0;
|
|
background: transparent;
|
|
}
|
|
|
|
/* tooltip theme for text tooltips */
|
|
|
|
.tippy-box[data-theme="tooltip"] {
|
|
background-color: var(--color-tooltip-bg);
|
|
color: var(--color-tooltip-text);
|
|
border: none;
|
|
}
|
|
|
|
.tippy-box[data-theme="tooltip"] .tippy-content {
|
|
padding: 0.5rem 1rem;
|
|
}
|
|
|
|
.tippy-box[data-theme="tooltip"] .tippy-svg-arrow-inner,
|
|
.tippy-box[data-theme="tooltip"] .tippy-svg-arrow-outer {
|
|
fill: var(--color-tooltip-bg);
|
|
}
|
|
|
|
/* menu theme for .ui.menu */
|
|
|
|
.tippy-box[data-theme="menu"] {
|
|
background-color: var(--color-menu);
|
|
color: var(--color-text);
|
|
box-shadow: 0 6px 18px var(--color-shadow);
|
|
}
|
|
|
|
.tippy-box[data-theme="menu"] .tippy-content {
|
|
padding: 4px 0;
|
|
}
|
|
|
|
.tippy-box[data-theme="menu"] .tippy-svg-arrow-inner {
|
|
fill: var(--color-menu);
|
|
}
|
|
|
|
/* Ellipsis, overflow menus */
|
|
|
|
.tippy-box[data-theme="menu"] .tippy-target > .item {
|
|
display: flex;
|
|
align-items: center;
|
|
padding: 9px 18px;
|
|
color: inherit;
|
|
text-decoration: none;
|
|
gap: 10px;
|
|
}
|
|
|
|
.tippy-box[data-theme="menu"] .tippy-target > .item:hover {
|
|
background: var(--color-hover);
|
|
}
|
|
|
|
.tippy-box[data-theme="menu"] .tippy-target > .item:focus {
|
|
background: var(--color-active);
|
|
}
|
|
|
|
.tippy-box[data-theme="menu"] .tippy-target > .item.active {
|
|
background: var(--color-active);
|
|
}
|
|
|
|
/* box-with-header theme to look like .ui.attached.segment. can contain .ui.attached.header */
|
|
|
|
.tippy-box[data-theme="box-with-header"] {
|
|
box-shadow: 0 6px 18px var(--color-shadow);
|
|
}
|
|
|
|
.tippy-box[data-theme="box-with-header"] .tippy-content {
|
|
background: var(--color-box-body);
|
|
border-radius: var(--border-radius);
|
|
padding: 0;
|
|
}
|
|
|
|
.tippy-box[data-theme="box-with-header"][data-placement^="top"] .tippy-svg-arrow-inner {
|
|
fill: var(--color-box-body);
|
|
}
|
|
|
|
.tippy-box[data-theme="box-with-header"][data-placement^="bottom"] .tippy-svg-arrow-inner {
|
|
fill: var(--color-box-header);
|
|
}
|
|
|
|
.tippy-box[data-placement^="top"] > .tippy-svg-arrow {
|
|
bottom: 0;
|
|
}
|
|
|
|
.tippy-box[data-placement^="top"] > .tippy-svg-arrow::after,
|
|
.tippy-box[data-placement^="top"] > .tippy-svg-arrow > svg {
|
|
top: 16px;
|
|
transform: rotate(180deg);
|
|
}
|
|
|
|
.tippy-box[data-placement^="bottom"] > .tippy-svg-arrow {
|
|
top: 0;
|
|
}
|
|
|
|
.tippy-box[data-placement^="bottom"] > .tippy-svg-arrow > svg {
|
|
bottom: 16px;
|
|
}
|
|
|
|
.tippy-box[data-placement^="left"] > .tippy-svg-arrow {
|
|
inset-inline-end: 0;
|
|
}
|
|
|
|
.tippy-box[data-placement^="left"] > .tippy-svg-arrow::after,
|
|
.tippy-box[data-placement^="left"] > .tippy-svg-arrow > svg {
|
|
transform: rotate(90deg);
|
|
top: calc(50% - 3px);
|
|
inset-inline-start: 11px;
|
|
}
|
|
|
|
.tippy-box[data-placement^="right"] > .tippy-svg-arrow {
|
|
inset-inline-start: 0;
|
|
}
|
|
|
|
.tippy-box[data-placement^="right"] > .tippy-svg-arrow::after,
|
|
.tippy-box[data-placement^="right"] > .tippy-svg-arrow > svg {
|
|
transform: rotate(-90deg);
|
|
top: calc(50% - 3px);
|
|
inset-inline-end: 11px;
|
|
}
|
|
|
|
.tippy-svg-arrow {
|
|
width: 16px;
|
|
height: 16px;
|
|
text-align: initial;
|
|
}
|
|
|
|
.tippy-svg-arrow,
|
|
.tippy-svg-arrow > svg {
|
|
position: absolute;
|
|
}
|
|
|
|
.tippy-svg-arrow-outer {
|
|
fill: var(--color-secondary);
|
|
}
|
|
|
|
.tippy-svg-arrow-inner {
|
|
fill: var(--color-body);
|
|
}
|
|
|
|
/* Stopwatch popup needs extra help with overriding tippy's styling. */
|
|
.tippy-box .active-stopwatch-popup {
|
|
display: flex !important;
|
|
}
|