Compare commits

...

3 commits

Author SHA1 Message Date
WBHarry
ddf4747310 Raised version
Some checks failed
Project CI / build (24.x) (push) Has been cancelled
2026-05-27 22:25:00 +02:00
Carlos Fernandez
ac72012387
Fix setting dialogs created from overriden light sheet actors (#1939) 2026-05-27 22:20:53 +02:00
Carlos Fernandez
1ab8170d2f
[Refactor] Define more border and input color variables (#1937)
* Define more border and input color variables

* Rename custom color variables

* Fix assignment of variables

* Apply border color variable to matching borders

* Add trait header colors and shadow contrast
2026-05-27 22:20:16 +02:00
33 changed files with 136 additions and 214 deletions

View file

@ -43,7 +43,7 @@
text-align: center;
font-size: var(--font-size-16);
margin: 0 4px;
border: 1px solid light-dark(@dark-blue, @golden);
border: 1px solid @color-border;
border-radius: 6px;
color: light-dark(@dark, @beige);
background-image: url('../assets/parchments/dh-parchment-dark.png');
@ -58,7 +58,7 @@
position: relative;
display: flex;
justify-content: center;
border: 1px solid light-dark(@dark-blue, @golden);
border: 1px solid @color-border;
border-radius: 6px;
cursor: pointer;
width: 120px;
@ -164,7 +164,7 @@
.hybrid-data {
padding: 0 2px;
border: 1px solid light-dark(@dark-blue, @golden);
border: 1px solid @color-border;
border-radius: 6px;
color: light-dark(@dark, @beige);
background-image: url('../assets/parchments/dh-parchment-dark.png');
@ -191,7 +191,7 @@
flex-direction: column;
gap: 4px;
padding: 0 4px;
border: 1px solid light-dark(@dark-blue, @golden);
border: 1px solid @color-border;
border-radius: 6px;
color: light-dark(@dark, @beige);
background-image: url('../assets/parchments/dh-parchment-dark.png');
@ -226,7 +226,7 @@
gap: 4px;
.trait-card {
border: 1px solid light-dark(@dark-blue, @golden);
border: 1px solid @color-border;
border-radius: 6px;
padding: 2px;
opacity: 0.4;

View file

@ -79,7 +79,7 @@
font-weight: bold;
padding: 0 2px;
background-image: url(../assets/parchments/dh-parchment-light.png);
border: 1px solid light-dark(@dark-blue, @golden);
border: 1px solid @color-border;
border-radius: 6px;
color: light-dark(@beige, @dark);
opacity: 0.4;
@ -203,7 +203,7 @@
height: 16px;
width: 110px;
min-height: unset;
border: 1px solid light-dark(@dark-blue, @golden);
border: 1px solid @color-border;
color: light-dark(@beige, @beige);
background-color: light-dark(var(--color-warm-3), var(--color-warm-3));
@ -230,7 +230,7 @@
.suggested-trait-container {
width: 56px;
white-space: nowrap;
border: 1px solid light-dark(@dark-blue, @golden);
border: 1px solid @color-border;
border-radius: 6px;
color: light-dark(@beige, @dark);
background-image: url('../assets/parchments/dh-parchment-light.png');
@ -345,7 +345,7 @@
display: flex;
justify-content: center;
position: relative;
border: 1px solid light-dark(@dark-blue, @golden);
border: 1px solid @color-border;
border-radius: 6px;
.nav-section-text {
@ -383,7 +383,7 @@
width: 56px;
text-align: center;
line-height: 1;
border: 1px solid light-dark(@dark-blue, @golden);
border: 1px solid @color-border;
border-radius: 6px;
color: light-dark(@beige, @dark);
background-image: url(../assets/parchments/dh-parchment-light.png);
@ -447,7 +447,7 @@
height: 100%;
.simple-equipment {
border: 1px solid light-dark(@dark-blue, @golden);
border: 1px solid @color-border;
border-radius: 8px;
position: relative;
display: flex;
@ -466,7 +466,7 @@
top: -8px;
font-size: var(--font-size-12);
white-space: nowrap;
border: 1px solid light-dark(@dark-blue, @golden);
border: 1px solid @color-border;
border-radius: 6px;
color: @dark;
background-image: url('../assets/parchments/dh-parchment-light.png');

View file

@ -81,7 +81,7 @@
.mark-container {
cursor: pointer;
border: 1px solid light-dark(@dark-blue, @golden);
border: 1px solid @color-border;
border-radius: 6px;
height: 26px;
padding: 0 1px;
@ -126,7 +126,7 @@
width: 100%;
.chip-inner-container {
border: 1px solid light-dark(@dark-blue, @golden);
border: 1px solid @color-border;
border-radius: 6px;
height: 26px;
padding: 0 4px;

View file

@ -55,7 +55,7 @@
.activity-selected-marker {
font-size: var(--font-size-14);
border: 1px solid light-dark(@dark-blue, @golden);
border: 1px solid @color-border;
border-radius: 6px;
color: light-dark(@dark, @beige);
background-image: url(../assets/parchments/dh-parchment-dark.png);
@ -78,7 +78,7 @@
}
.refreshable-container {
border: 1px solid light-dark(@dark-blue, @golden);
border: 1px solid @color-border;
border-radius: 6px;
color: light-dark(@dark, @beige);
background-image: url('../assets/parchments/dh-parchment-dark.png');

View file

@ -12,7 +12,7 @@
img {
width: 136px;
height: 136px;
border: 1px solid light-dark(@dark-blue, @golden);
border: 1px solid @color-border;
border-radius: 6px;
opacity: 0.4;

View file

@ -57,7 +57,7 @@
display: flex;
flex-wrap: wrap;
font-style: italic;
border: 1px solid light-dark(@dark-blue, @golden);
border: 1px solid @color-border;
border-radius: 6px;
padding: 4px 4px;
}

View file

@ -36,7 +36,7 @@
align-items: stretch;
justify-content: center;
border-radius: 6px;
border: 1px solid light-dark(@dark-blue, @golden);
border: 1px solid @color-border;
overflow: hidden;
height: 11.5rem;
width: 122px;

View file

@ -42,7 +42,7 @@
img {
height: 64px;
border-radius: 6px;
border: 1px solid light-dark(@dark-blue, @golden);
border: 1px solid @color-border;
}
.member-name {

View file

@ -36,7 +36,7 @@
padding: 0;
&:hover {
border: 1px solid light-dark(@dark-blue, @golden);
border: 1px solid @color-border;
color: @color-text-emphatic;
}
}

View file

@ -2,8 +2,6 @@
@import '../utils/fonts.less';
.dh-style {
border: 1px solid light-dark(@dark-blue, @golden);
input[type='text'],
input[type='number'],
textarea,
@ -14,12 +12,12 @@
box-shadow: 0 4px 30px @soft-shadow;
backdrop-filter: blur(9.5px);
outline: 2px solid transparent;
color: @color-text-emphatic;
border: 1px solid light-dark(@dark, @beige);
color: @input-color-text;
border: 1px solid @input-color-border;
transition: all 0.3s ease;
&::placeholder {
color: light-dark(@dark-40, @beige-50);
color: @color-text-subtle;
}
&:hover,
@ -30,7 +28,7 @@
&:focus[type='number'] {
background: light-dark(@soft-shadow, @semi-transparent-dark-blue);
box-shadow: none;
outline: 2px solid light-dark(@dark, @beige);
outline: 2px solid @input-color-border;
}
&:disabled[type='text'],
@ -47,7 +45,7 @@
.input[contenteditable] {
cursor: var(--cursor-text);
&:empty:before {
color: light-dark(@dark-40, @beige-50);
color: @color-text-subtle;
content: attr(placeholder);
}
}
@ -265,7 +263,7 @@
align-items: center;
margin-top: 5px;
border-radius: 6px;
border-color: light-dark(@dark-blue, @golden);
border-color: @color-fieldset-border;
&.glassy {
background-color: light-dark(@dark-blue-10, @golden-10);
@ -274,7 +272,7 @@
legend {
padding: 2px 12px;
border-radius: 3px;
background-color: light-dark(@dark-blue, @golden);
background-color: @color-fieldset-border;
color: light-dark(@beige, @dark-blue);
margin-bottom: var(--spacer-4);
}
@ -365,18 +363,6 @@
}
}
input[type='text'],
input[type='number'] {
color: light-dark(@dark, @beige);
transition: all 0.3s ease;
outline: 2px solid transparent;
&:focus,
&:hover {
outline: 2px solid light-dark(@dark, @beige);
}
}
&[disabled],
&.child-disabled .form-group,
select[disabled],
@ -514,7 +500,7 @@
display: block;
height: 1px;
width: 100%;
border-bottom: 1px solid light-dark(@dark-blue, @golden);
border-bottom: 1px solid @color-border;
mask-image: linear-gradient(270deg, transparent 0%, black 50%, transparent 100%);
}
@ -522,7 +508,7 @@
display: block;
height: 1px;
width: 100%;
border-bottom: 1px solid light-dark(@dark-blue, @golden);
border-bottom: 1px solid @color-border;
mask-image: linear-gradient(270deg, transparent 0%, black 100%);
&.invert {

View file

@ -287,7 +287,7 @@
position: relative;
height: 120px;
width: 98px;
border: 1px solid light-dark(@dark-blue, @golden);
border: 1px solid @color-border;
border-radius: 6px;
cursor: pointer;

View file

@ -50,7 +50,7 @@
flex-wrap: wrap;
gap: 5px;
padding: 5px;
border: 1px solid light-dark(@dark-blue, @golden);
border: 1px solid @color-border;
border-radius: 6px;
z-index: 1;
color: @color-text-emphatic;
@ -59,7 +59,7 @@
.slot {
width: 15px;
height: 10px;
border: 1px solid light-dark(@dark-blue, @golden);
border: 1px solid @color-border;
background: light-dark(@dark-blue-10, @golden-10);
border-radius: 3px;
transition: all 0.3s ease;
@ -148,7 +148,7 @@
appearance: none;
width: 100px;
height: 40px;
border: 1px solid light-dark(@dark-blue, @golden);
border: 1px solid @color-border;
border-radius: 6px;
z-index: 1;
background: @dark-blue;

View file

@ -4,7 +4,7 @@
// Theme handling
.appTheme({
background: @dark-blue-d0;
background: @dark-blue-c0;
backdrop-filter: blur(7px);
}, {
background: url('../assets/parchments/dh-parchment-light.png') no-repeat center;

View file

@ -1,6 +1,7 @@
@import '../../utils/colors.less';
.theme-light .application.daggerheart.dh-style.dialog {
.appTheme({}, {
&.dialog.character-settings {
.tab.details {
.traits-inner-container .trait-container {
background: url('../assets/svg/trait-shield-light.svg') no-repeat;
@ -11,7 +12,8 @@
}
}
}
}
}
});
.application.daggerheart.dh-style.dialog {
.tab.details {

View file

@ -182,7 +182,7 @@
background-color: light-dark(transparent, @dark-blue);
color: @color-text-emphatic;
padding: 5px 10px;
border: 1px solid light-dark(@dark-blue, @golden);
border: 1px solid @color-border;
border-radius: 6px;
align-items: center;
width: fit-content;

View file

@ -67,7 +67,7 @@
background-color: light-dark(transparent, @dark-blue);
color: @color-text-emphatic;
padding: 5px 10px;
border: 1px solid light-dark(@dark-blue, @golden);
border: 1px solid @color-border;
border-radius: 6px;
align-items: center;
width: fit-content;
@ -191,7 +191,7 @@
appearance: none;
width: 100px;
height: 40px;
border: 1px solid light-dark(@dark-blue, @golden);
border: 1px solid @color-border;
border-radius: 6px;
z-index: 1;
background: @dark-blue;
@ -237,7 +237,7 @@
display: flex;
width: 50px;
height: 30px;
border: 1px solid light-dark(@dark-blue, @golden);
border: 1px solid @color-border;
border-bottom: none;
border-radius: 6px 6px 0 0;
padding: 0 6px;

View file

@ -172,7 +172,7 @@
background-color: light-dark(transparent, @dark-blue);
color: @color-text-emphatic;
padding: 5px 10px;
border: 1px solid light-dark(@dark-blue, @golden);
border: 1px solid @color-border;
border-radius: 6px;
align-items: center;
width: fit-content;
@ -226,7 +226,6 @@
padding-left: 0.5rem;
.trait {
--color-border: light-dark(@semi-transparent-dark-blue, @golden-60);
cursor: pointer;
position: relative;
@ -238,10 +237,10 @@
.trait-name {
position: relative;
background-color: light-dark(@semi-transparent-dark-blue, @golden-40);
border: 1px solid var(--color-border);
background-color: @trait-color-bg;
border: 1px solid @trait-color-border;
border-radius: 3px;
color: light-dark(var(--color-light-1), @golden);
color: @color-text-emphatic;
font-size: var(--font-size-12);
font-weight: 600;
height: 1rem;
@ -250,7 +249,7 @@
width: 100%;
padding: 0 0.1876px 0 0.375rem;
margin-right: 0.125rem; /* makes it center SLIGHTLY */
text-shadow: 1px 1px 2px @light-black;
text-shadow: 1px 1px 3px @color-text-shadow-contrast;
display: flex;
align-items: center;
@ -259,7 +258,7 @@
.tier-mark {
position: absolute;
background-color: @dark-blue;
border: 1px solid light-dark(@dark-blue, @golden);
border: 1px solid @color-border;
border-radius: 50%;
width: 1rem;
height: 1rem;
@ -279,6 +278,7 @@
}
.trait-value-area {
--color-border: @trait-color-border;
--background: light-dark(#e8e6e3, @dark-blue);
display: flex;
position: relative;
@ -298,7 +298,7 @@
.spellcasting-mark {
position: absolute;
border: 1px solid light-dark(@dark-blue, @golden);
border: 1px solid @color-border;
color: @golden;
left: 0;
right: 0;

View file

@ -45,7 +45,7 @@
.btn-toggle-view {
background: light-dark(@dark-blue-10, @dark-blue);
border: 1px solid light-dark(@dark-blue, @golden);
border: 1px solid @color-border;
border-radius: 15px;
padding: 0;
gap: 0;

View file

@ -40,7 +40,7 @@
.application.sheet.dh-style .character-sidebar-sheet {
width: 275px;
min-width: 275px;
border-right: 1px solid light-dark(@dark-blue, @golden);
border-right: 1px solid @color-border;
.portrait {
position: relative;
@ -168,7 +168,7 @@
appearance: none;
width: 100px;
height: 40px;
border: 1px solid light-dark(@dark-blue, @golden);
border: 1px solid @color-border;
border-radius: 6px;
z-index: 1;
background: @dark-blue;
@ -282,7 +282,7 @@
&:hover {
background: light-dark(@light-black, @dark-blue);
border: 1px solid light-dark(@dark-blue, @golden);
border: 1px solid @color-border;
h4,
i {
@ -309,7 +309,7 @@
flex-wrap: wrap;
gap: 4px;
padding: 5px;
border: 1px solid light-dark(@dark-blue, @golden);
border: 1px solid @color-border;
border-radius: 6px;
z-index: 1;
background: @dark-blue;
@ -343,7 +343,7 @@
&:hover {
background: light-dark(@light-black, @dark-blue);
border: 1px solid light-dark(@dark-blue, @golden);
border: 1px solid @color-border;
.label,
.value,
@ -375,7 +375,7 @@
text-align: center;
z-index: 2;
color: light-dark(@dark-blue, @beige);
border: 1px solid light-dark(@dark-blue, @golden);
border: 1px solid @color-border;
border-bottom: none;
border-radius: 6px 6px 0 0;
@ -411,7 +411,7 @@
appearance: none;
width: 80px;
height: 30px;
border: 1px solid light-dark(@dark-blue, @golden);
border: 1px solid @color-border;
border-radius: 6px;
z-index: 1;
background: light-dark(transparent, @dark-blue);
@ -450,7 +450,7 @@
display: flex;
width: 50px;
height: 30px;
border: 1px solid light-dark(@dark-blue, @golden);
border: 1px solid @color-border;
border-bottom: none;
border-radius: 6px 6px 0 0;
padding: 0 6px;
@ -515,7 +515,7 @@
background-color: light-dark(transparent, @dark-blue);
color: @color-text-emphatic;
padding: 5px 10px;
border: 1px solid light-dark(@dark-blue, @golden);
border: 1px solid @color-border;
border-radius: 6px;
align-items: center;
width: fit-content;

View file

@ -30,14 +30,14 @@
font-size: var(--font-size-24);
outline: 2px solid transparent;
box-shadow: unset;
text-shadow: 0 0 4px light-dark(white, @dark-80), 0 0 8px light-dark(white, @dark-80), 0 0 14px light-dark(white, @dark-80);
text-shadow: 0 0 4px @color-text-shadow-contrast, 0 0 8px @color-text-shadow-contrast, 0 0 14px @color-text-shadow-contrast;
height: 2rem;
text-align: center;
transition: all 0.3s ease;
&:hover {
outline: 2px solid light-dark(@dark, @golden);
outline: 2px solid @color-border;
}
}
}
@ -68,7 +68,7 @@
display: flex;
width: 50px;
height: 40px;
border: 1px solid light-dark(@dark-blue, @golden);
border: 1px solid @color-border;
border-bottom: none;
border-radius: 6px 6px 0 0;
padding: 0 6px;
@ -100,104 +100,6 @@
}
}
// .status-bar {
// display: flex;
// justify-content: center;
// position: relative;
// width: 100px;
// height: 40px;
// .status-label {
// position: relative;
// top: 40px;
// height: 22px;
// width: 79px;
// clip-path: path('M0 0H79L74 16.5L39 22L4 16.5L0 0Z');
// background: light-dark(@dark-blue, @golden);
// h4 {
// font-weight: bold;
// text-align: center;
// line-height: 18px;
// color: light-dark(@beige, @dark-blue);
// }
// }
// .status-value {
// position: absolute;
// display: flex;
// padding: 0 6px;
// font-size: 1.5rem;
// align-items: center;
// width: 100px;
// height: 40px;
// justify-content: center;
// text-align: center;
// z-index: 2;
// color: @beige;
// input[type='number'] {
// background: transparent;
// font-size: 1.5rem;
// width: 40px;
// height: 30px;
// text-align: center;
// border: none;
// outline: 2px solid transparent;
// color: @beige;
// &.bar-input {
// padding: 0;
// color: @beige;
// backdrop-filter: none;
// background: transparent;
// transition: all 0.3s ease;
// &:hover,
// &:focus {
// background: @semi-transparent-dark-blue;
// backdrop-filter: blur(9.5px);
// }
// }
// }
// .bar-label {
// width: 40px;
// }
// }
// .progress-bar {
// position: absolute;
// appearance: none;
// width: 100px;
// height: 40px;
// border: 1px solid light-dark(@dark-blue, @golden);
// border-radius: 6px;
// z-index: 1;
// background: @dark-blue;
// &::-webkit-progress-bar {
// border: none;
// background: @dark-blue;
// border-radius: 6px;
// }
// &::-webkit-progress-value {
// background: @gradient-hp;
// border-radius: 6px;
// }
// &.stress-color::-webkit-progress-value {
// background: @gradient-stress;
// border-radius: 6px;
// }
// &::-moz-progress-bar {
// background: @gradient-hp;
// border-radius: 6px;
// }
// &.stress-color::-moz-progress-bar {
// background: @gradient-stress;
// border-radius: 6px;
// }
// }
// }
.level-div {
white-space: nowrap;
display: flex;

View file

@ -36,15 +36,14 @@
transition: all 0.3s ease;
outline: 2px solid transparent;
box-shadow: none;
text-shadow: 0 0 4px light-dark(white, @dark-80), 0 0 8px light-dark(white, @dark-80), 0 0 14px light-dark(white, @dark-80);
text-shadow: 0 0 4px @color-text-shadow-contrast, 0 0 8px @color-text-shadow-contrast, 0 0 14px @color-text-shadow-contrast;
padding-left: 0;
height: 2.625rem;
&:hover[type='text'],
&:focus[type='text'] {
box-shadow: none;
outline: 2px solid light-dark(@dark-blue, @golden);
outline: 2px solid @color-border;
}
}
@ -98,7 +97,7 @@
display: flex;
width: 50px;
height: 30px;
border: 1px solid light-dark(@dark-blue, @golden);
border: 1px solid @color-border;
border-bottom: none;
border-radius: 6px 6px 0 0;
padding: 0 6px;

View file

@ -20,11 +20,12 @@
input.item-name[type='text'] {
backdrop-filter: none;
border: none;
color: @color-text-emphatic;
font-family: @font-title;
font-size: var(--font-size-32);
outline: 2px solid transparent;
box-shadow: unset;
text-shadow: 0 0 4px light-dark(white, @dark-80), 0 0 8px light-dark(white, @dark-80), 0 0 14px light-dark(white, @dark-80);
text-shadow: 0 0 4px @color-text-shadow-contrast, 0 0 8px @color-text-shadow-contrast, 0 0 14px @color-text-shadow-contrast;
text-align: center;
transition: all 0.3s ease;
@ -33,7 +34,7 @@
&:hover[type='text'],
&:focus[type='text'] {
outline: 2px solid light-dark(@dark-blue, @golden);
outline: 2px solid @color-border;
}
}

View file

@ -48,7 +48,7 @@
border-radius: 50%;
width: 24px;
height: 24px;
border: 1px solid light-dark(@dark-blue, @golden);
border: 1px solid @color-border;
object-fit: cover;
}
}
@ -81,7 +81,7 @@
background-color: light-dark(var(--color-light-1), @dark-blue);
color: @color-text-emphatic;
padding: 4px 6px;
border: 1px solid light-dark(@dark-blue, @golden);
border: 1px solid @color-border;
border-radius: 3px;
align-items: baseline;
width: fit-content;
@ -134,7 +134,7 @@
background-color: light-dark(transparent, @dark-blue);
color: @color-text-emphatic;
padding: 3px 6px;
border: 1px solid light-dark(@dark-blue, @golden);
border: 1px solid @color-border;
border-radius: 3px;
align-items: center;
width: fit-content;
@ -214,7 +214,7 @@
background-color: light-dark(@dark-blue-10, @dark-blue);
color: @color-text-emphatic;
padding: 2px 5px;
border: 1px solid light-dark(@dark-blue, @golden);
border: 1px solid @color-border;
border-radius: 0 6px 6px 0;
width: fit-content;
min-height: 22px;
@ -232,7 +232,7 @@
.slot {
width: 16px;
height: 10px;
border: 1px solid light-dark(@dark-blue, @golden);
border: 1px solid @color-border;
background: light-dark(@dark-blue-10, @golden-10);
border-radius: 3px;
transition: all 0.3s ease;
@ -248,7 +248,7 @@
.traits {
background-color: light-dark(@dark-blue-10, @dark-blue);
border: 1px solid light-dark(@dark-blue, @golden);
border: 1px solid @color-border;
border-radius: 6px;
display: grid;
grid-template-columns: 1fr 1fr;

View file

@ -20,7 +20,7 @@
.effect-container {
position: relative;
pointer-events: all;
border: 1px solid light-dark(@dark-blue, @golden);
border: 1px solid @color-border;
border-radius: 3px;
img {

View file

@ -266,7 +266,7 @@
align-items: center;
background-color: light-dark(@dark-15, @dark-golden-80);
color: @color-text-emphatic;
border: 1px solid light-dark(@dark-blue, @golden);
border: 1px solid @color-border;
border-radius: 3px;
min-height: 30px;
font-weight: bold;

View file

@ -60,7 +60,7 @@
position: relative;
display: flex;
justify-content: center;
border: 1px solid light-dark(@dark-blue, @golden);
border: 1px solid @color-border;
border-radius: 6px;
&.selectable {
@ -76,7 +76,7 @@
.domain-label {
position: absolute;
top: 4px;
border: 1px solid light-dark(@dark-blue, @golden);
border: 1px solid @color-border;
border-radius: 6px;
padding: 0 2px;
color: light-dark(@dark, @beige);

View file

@ -21,7 +21,7 @@
border: 1px solid;
border-radius: 6px;
padding: 0 8px;
border: 1px solid light-dark(@dark-blue, @golden);
border: 1px solid @color-border;
color: light-dark(@dark, @beige);
background-image: url('../assets/parchments/dh-parchment-dark.png');
cursor: pointer;

View file

@ -51,7 +51,7 @@
--dark-blue-50: #18162e50;
--dark-blue-60: #18162e60;
--dark-blue-90: #18162e90;
--dark-blue-d0: #18162ed0;
--dark-blue-c0: #18162ec0;
--semi-transparent-dark-blue: rgba(24, 22, 46, 0.33);
--dark: #222222;
@ -71,6 +71,7 @@
--beige-filter: brightness(0) saturate(100%) invert(87%) sepia(25%) saturate(164%) hue-rotate(339deg) brightness(106%) contrast(87%);
--bright-beige-filter: brightness(0) saturate(100%) invert(87%) sepia(15%) saturate(343%) hue-rotate(333deg) brightness(110%) contrast(87%);
--light-white: rgba(255, 255, 255, 0.3);
--soft-white-shadow: rgba(255, 255, 255, 0.05);
--light-black: rgba(0, 0, 0, 0.3);
@ -85,13 +86,27 @@
--primary-color-fear: rgba(9, 71, 179, 0.75);
}
/**
* Override core foundry color variables in theme scopes, and add some new theme specific variants.
* These are intended to be more representative of its use case, so avoid naming these after the color.
* Some foundry variables are heavily scoped and we need to redefine them (https://github.com/foundryvtt/foundryvtt/issues/12893)
* Convention for the redefined ones is --dh-{element}-color-{thing}
*/
@scope (.theme-light) to (.themed) {
.dh-style :scope,
:scope.dh-style,
.dh-style,
.duality {
--color-border: @dark-blue;
--color-fieldset-border: @dark-blue;
--color-text-emphatic: @dark-blue;
--color-text-subtle: #555;
--dh-color-text-shadow-contrast: #ffffffa0;
--dh-input-color-border: @dark;
--dh-input-color-text: @dark;
--dh-trait-color-bg: #b1afb6;
--dh-trait-color-border: #8e8d96;
}
}
@scope (.theme-dark) to (.themed) {
@ -99,8 +114,16 @@
:scope.dh-style,
.dh-style,
.duality {
--color-border: @golden;
--color-fieldset-border: @golden;
--color-text-emphatic: @golden;
--color-text-subtle: #a29086;
--dh-color-text-shadow-contrast: @dark-80;
--dh-input-color-border: @beige;
--dh-input-color-text: @beige;
--dh-trait-color-bg: #50433F;
--dh-trait-color-border: #927952;
}
}
@ -156,7 +179,7 @@
@dark-blue-50: var(--dark-blue-50, #18162e50);
@dark-blue-60: var(--dark-blue-60, #18162e60);
@dark-blue-90: var(--dark-blue-90, #18162e90);
@dark-blue-d0: var(--dark-blue-d0, #18162ed0);
@dark-blue-c0: var(--dark-blue-c0, #18162ec0);
@semi-transparent-dark-blue: var(--semi-transparent-dark-blue, rgba(24, 22, 46, 0.33));
@dark: var(--dark, #222222);
@ -178,6 +201,7 @@
@soft-white-shadow: var(--soft-white-shadow, rgba(255, 255, 255, 0.05));
@light-white: var(--light-white, rgba(255, 255, 255, 0.3));
@light-black: var(--light-black, rgba(0, 0, 0, 0.3));
@soft-shadow: var(--soft-shadow, rgba(0, 0, 0, 0.05));
@ -211,6 +235,13 @@
}
// LESS variable versions of core foundry color variables
@color-border: var(--color-border);
@color-fieldset-border: var(--color-fieldset-border);
@color-text-emphatic: var(--color-text-emphatic);
@color-text-primary: var(--color-text-primary);
@color-text-subtle: var(--color-text-subtle);
@color-text-shadow-contrast: var(--dh-color-text-shadow-contrast);
@input-color-border: var(--dh-input-color-border);
@input-color-text: var(--dh-input-color-text);
@trait-color-bg: var(--dh-trait-color-bg);
@trait-color-border: var(--dh-trait-color-border);

View file

@ -5,16 +5,16 @@
*/
.appTheme(@darkRules, @lightRules) {
// Dark theme selectors
.themed.theme-dark .application.daggerheart.sheet.dh-style,
.themed.theme-dark.application.daggerheart.sheet.dh-style,
.themed.theme-dark .application.daggerheart.dh-style,
.themed.theme-dark.application.daggerheart.dh-style,
body.theme-dark .application.daggerheart,
body.theme-dark.application.daggerheart {
@darkRules();
}
// Light theme selectors
.themed.theme-light .application.daggerheart.sheet.dh-style,
.themed.theme-light.application.daggerheart.sheet.dh-style,
.themed.theme-light .application.daggerheart.dh-style,
.themed.theme-light.application.daggerheart.dh-style,
body.theme-light .application.daggerheart,
body.theme-light.application.daggerheart {
@lightRules();
@ -50,15 +50,16 @@
*/
.dh-typography() {
h1 {
--dh-input-color-text: @color-text-emphatic;
font-family: @font-title;
margin: 0;
border: none;
font-weight: normal;
}
h1 input[type='text'] {
input[type='text'],
.input[contenteditable] {
font-family: @font-title;
}
}
h2,
h3 {

View file

@ -83,7 +83,7 @@
appearance: none;
width: 100%;
height: 30px;
border: 1px solid light-dark(@dark-blue, @golden);
border: 1px solid @color-border;
border-radius: 6px;
z-index: 1;
background: @dark-blue;
@ -118,7 +118,7 @@
flex-wrap: wrap;
gap: 4px;
padding: 5px;
border: 1px solid light-dark(@dark-blue, @golden);
border: 1px solid @color-border;
border-radius: 6px;
z-index: 1;
background: @dark-blue;

View file

@ -11,7 +11,7 @@
background-color: light-dark(transparent, @dark-blue);
color: @color-text-emphatic;
padding: 5px 10px;
border: 1px solid light-dark(@dark-blue, @golden);
border: 1px solid @color-border;
border-radius: 6px;
align-items: center;
width: fit-content;

View file

@ -238,7 +238,7 @@ aside[role='tooltip'].locked-tooltip:has(div.daggerheart.dh-style.tooltip.card-s
.tooltip-chip {
font-size: var(--font-size-18);
padding: 2px 4px;
border: 1px solid light-dark(@dark-blue, @golden);
border: 1px solid @color-border;
border-radius: 6px;
color: light-dark(@dark, @beige);
background-image: url(../assets/parchments/dh-parchment-dark.png);

View file

@ -2,7 +2,7 @@
"id": "daggerheart",
"title": "Daggerheart",
"description": "An unofficial implementation of the Daggerheart system",
"version": "2.2.6",
"version": "2.2.7",
"compatibility": {
"minimum": "14.361",
"verified": "14.363",
@ -10,7 +10,7 @@
},
"url": "https://github.com/Foundryborne/daggerheart",
"manifest": "https://raw.githubusercontent.com/Foundryborne/daggerheart/v14/system.json",
"download": "https://github.com/Foundryborne/daggerheart/releases/download/2.2.6/system.zip",
"download": "https://github.com/Foundryborne/daggerheart/releases/download/2.2.7/system.zip",
"authors": [
{
"name": "WBHarry"