Merge branch 'main' into feature/106-items-browser

This commit is contained in:
Dapoolp 2025-08-06 16:30:58 +02:00
commit e5f0ac7d30
41 changed files with 888 additions and 209 deletions

View file

@ -3,6 +3,7 @@
@import './level-up/sheet.less';
@import './level-up/summary-container.less';
@import './level-up/tiers-container.less';
@import './level-up/footer.less';
@import './resource-dice/sheet.less';

View file

@ -0,0 +1,19 @@
@import '../../utils/fonts.less';
.daggerheart.levelup {
.tab-footer {
margin-top: 10px;
.levelup-navigation-actions,
.levelup-footer {
display: flex;
justify-content: end;
gap: 10px;
button {
font-family: @font-body;
font-weight: bold;
height: 40px;
}
}
}
}

View file

@ -1,3 +1,6 @@
@import '../../utils/colors.less';
@import '../../utils/fonts.less';
.daggerheart.levelup {
.levelup-navigation-container {
display: flex;
@ -7,23 +10,18 @@
nav {
flex: 1;
border: none;
.levelup-tab-container {
display: flex;
align-items: center;
gap: 4px;
}
}
.levelup-navigation-actions {
width: 306px;
display: flex;
justify-content: end;
gap: 16px;
margin-right: 4px;
* {
width: calc(50% - 8px);
a,
span {
font-family: @font-body;
color: light-dark(@dark-blue, @golden);
}
}
}
}

View file

@ -1,18 +1,38 @@
@import '../../utils/fonts.less';
@import '../../utils/colors.less';
.daggerheart.levelup {
.levelup-selections-container {
overflow: auto;
padding: 10px 0;
scrollbar-width: thin;
scrollbar-color: light-dark(@dark-blue, @golden) transparent;
max-height: 500px;
mask-image: linear-gradient(0deg, transparent 0%, black 5%, black 95%, transparent 100%);
.achievement-experience-cards {
display: flex;
gap: 8px;
.achievement-experience-card {
border: 1px solid;
border-radius: 4px;
padding-right: 4px;
font-size: 18px;
display: flex;
justify-content: space-between;
align-items: center;
background: light-dark(@dark-blue-40, @golden-40);
border-radius: 3px;
padding: 5px;
font-size: 16px;
gap: 4px;
width: 100%;
input {
background: light-dark(@soft-shadow, @semi-transparent-dark-blue);
width: 80%;
}
span {
font-family: @font-body;
}
.achievement-experience-marker {
border: 1px solid;
@ -30,10 +50,13 @@
.levelup-card-selection {
display: flex;
flex-wrap: wrap;
justify-content: center;
gap: 40px;
height: 190px;
.card-preview-container {
width: calc(100% * (1 / 5));
height: 100%;
max-width: 200px;
}
.levelup-domains-selection-container {
@ -89,10 +112,30 @@
}
}
.card-section {
flex: 1 1 100%;
.card-section-header {
display: flex;
align-items: center;
gap: 20px;
margin-bottom: 10px;
h3 {
font-family: @font-subtitle;
color: light-dark(@dark, @beige);
margin: 0;
white-space: nowrap;
}
}
}
.levelup-selections-title {
display: flex;
align-items: center;
gap: 4px;
margin-left: auto;
margin-right: auto;
font-size: 22px;
font-weight: bold;
padding: 0 12px;
}
.levelup-radio-choices {

View file

@ -25,9 +25,11 @@
section {
.section-container {
display: flex;
flex-direction: column;
gap: 8px;
flex-direction: row;
justify-content: center;
gap: 20px 8px;
margin-top: 8px;
flex-wrap: wrap;
}
}

View file

@ -1,5 +1,28 @@
@import '../../utils/colors.less';
@import '../../utils/fonts.less';
.daggerheart.levelup {
.summary-header {
display: flex;
align-items: center;
gap: 20px;
margin-bottom: 10px;
h3 {
font-family: @font-subtitle;
color: light-dark(@dark, @beige);
margin: 0;
white-space: nowrap;
}
}
.levelup-summary-container {
overflow: auto;
padding: 10px 0;
scrollbar-width: thin;
scrollbar-color: light-dark(@dark-blue, @golden) transparent;
max-height: 700px;
mask-image: linear-gradient(0deg, transparent 0%, black 5%, black 95%, transparent 100%);
.level-achievements-container,
.level-advancements-container {
display: flex;
@ -11,7 +34,7 @@
h4,
h5 {
margin: 0;
color: var(--color-text-secondary);
color: light-dark(@dark, @beige);
}
}
@ -19,7 +42,19 @@
display: flex;
align-items: center;
gap: 4px;
font-size: 20px;
font-size: 14px;
font-family: @font-body;
color: light-dark(@dark, @beige);
}
h5.summary-section {
display: flex;
align-items: center;
gap: 4px;
font-size: 16px;
font-family: @font-subtitle;
color: light-dark(@dark, @beige);
margin-bottom: 5px;
}
.summary-selection-container {
@ -28,9 +63,11 @@
.summary-selection {
border: 2px solid;
border-radius: 6px;
border-radius: 3px;
padding: 0 4px;
font-size: 18px;
font-size: 14px;
font-family: @font-body;
color: light-dark(@dark, @beige);
}
}
}

View file

@ -1,3 +1,6 @@
@import '../../utils/colors.less';
@import '../../utils/fonts.less';
.daggerheart.levelup {
.tiers-container {
display: flex;
@ -38,7 +41,7 @@
height: min-content;
&.multi {
border: 2px solid grey;
border: 2px solid light-dark(@dark-blue-40, @golden-40);
padding: 2.4px 2.5px 0;
border-radius: 4px;
gap: 2px;
@ -56,7 +59,8 @@
}
.checkbox-group-label {
font-size: 14px;
font-family: @font-body;
font-size: 12px;
font-style: italic;
}
}

View file

@ -619,6 +619,7 @@
margin-left: 8px;
height: 20px;
width: 20px;
filter: @dark-filter;
}
}
}
@ -651,31 +652,33 @@
}
}
.theme-light .application {
&.sheet.dh-style {
button.glow {
animation: glow-dark 0.75s infinite alternate;
}
}
.component.dh-style.card-preview-container {
background-image: url('../assets/parchments/dh-parchment-light.png');
.preview-text-container {
background-image: url(../assets/parchments/dh-parchment-dark.png);
.theme-light {
.application {
&.sheet.dh-style {
button.glow {
animation: glow-dark 0.75s infinite alternate;
}
}
.preview-selected-icon-container {
background-image: url(../assets/parchments/dh-parchment-dark.png);
color: var(--color-light-5);
.component.dh-style.card-preview-container {
background-image: url('../assets/parchments/dh-parchment-light.png');
.preview-text-container {
background-image: url(../assets/parchments/dh-parchment-dark.png);
}
.preview-selected-icon-container {
background-image: url(../assets/parchments/dh-parchment-dark.png);
color: var(--color-light-5);
}
}
}
}
.application .component.dh-style.card-preview-container {
position: relative;
border-radius: 6px;
border: 2px solid var(--color-tabs-border);
border: 2px solid transparent;
display: flex;
flex-direction: column;
aspect-ratio: 0.75;
@ -697,31 +700,41 @@
justify-content: center;
}
.preview-image-container {
flex: 1;
border-radius: 4px 4px 0 0;
}
.preview-text-container {
flex: 1;
border-radius: 0 0 4px 4px;
.preview-selected-container {
display: flex;
flex-direction: column;
align-items: center;
justify-content: center;
font-size: 18px;
text-align: center;
color: var(--color-text-selection-bg);
background-image: url(../assets/parchments/dh-parchment-light.png);
border: 2px solid light-dark(@dark-blue-50, @beige-50);
border-radius: 6px;
max-width: 200px;
height: 100%;
.preview-image-container {
width: 100%;
flex-grow: 1;
object-fit: cover;
border-radius: 4px 4px 0 0;
}
.preview-text-container {
font-family: @font-body;
padding: 10px 0;
text-align: center;
font-size: 16px;
color: light-dark(@beige, @dark);
background-image: url(../assets/parchments/dh-parchment-light.png);
border-radius: 0 0 4px 4px;
}
}
.preview-empty-container {
border-radius: 6px;
pointer-events: none;
position: relative;
display: flex;
align-items: center;
justify-content: center;
flex: 1;
border: 2px dashed light-dark(@dark-blue-50, @beige-50);
.preview-empty-inner-container {
width: 100%;
@ -729,15 +742,19 @@
justify-content: center;
.preview-add-icon {
font-size: 48px;
font-size: 40px;
color: light-dark(@dark-blue-50, @beige-50);
}
.preview-empty-subtext {
position: absolute;
top: 10%;
font-size: 18px;
bottom: 5%;
font-size: 10px;
font-variant: small-caps;
text-align: center;
font-family: @font-body;
font-style: italic;
color: light-dark(@dark-blue-60, @beige-80);
}
}
}

View file

@ -55,6 +55,10 @@
width: 40px;
object-fit: cover;
border-radius: 3px;
&.actor-img {
border-radius: 50%;
}
}
.roll-img {

View file

@ -3,11 +3,11 @@
.appTheme({
.item-card-header .item-icons-list .item-icon img {
filter: invert(88%) sepia(98%) saturate(1784%) hue-rotate(311deg) brightness(104%) contrast(91%);
filter: @golden-filter;
}
}, {
.item-card-header .item-icons-list .item-icon img {
filter: invert(87%) sepia(15%) saturate(343%) hue-rotate(333deg) brightness(110%) contrast(87%);
filter: @bright-beige-filter;
}
});

View file

@ -24,6 +24,9 @@
flex-direction: column;
gap: 10px;
align-items: center;
width: 100%;
padding: 0 10px;
margin-bottom: 5px;
}
}
@ -33,6 +36,7 @@
text-align: center;
font-style: italic;
justify-content: center;
padding: 10px 0;
}
.experience-list {
@ -40,7 +44,6 @@
flex-direction: column;
gap: 5px;
width: 100%;
margin-top: 10px;
align-items: center;
.experience-row {
@ -49,6 +52,8 @@
width: 250px;
align-items: center;
justify-content: space-between;
width: 100%;
padding: 0 10px;
.experience-name {
width: 180px;

View file

@ -18,4 +18,6 @@
@import './resources/resources.less';
@import './settings/settings.less';
@import './settings/settings.less';
@import './settings/homebrew-settings/domains.less';

View file

@ -0,0 +1,155 @@
.theme-light .daggerheart.dh-style.setting.homebrew-settings .domains.tab {
.domains-container .domain-container {
.domain-label {
background-image: url('../assets/parchments/dh-parchment-light.png');
}
img {
filter: @dark-filter;
}
}
}
.daggerheart.dh-style.setting.homebrew-settings {
.domains.tab {
.title-wrapper {
width: 100%;
display: flex;
align-items: center;
justify-content: center;
gap: 12px;
&:first-child {
h2 {
margin-top: 0;
}
}
.top-lines {
position: relative;
bottom: 8px;
}
h2 {
display: flex;
align-items: center;
font-family: @font-subtitle;
position: relative;
width: auto;
white-space: nowrap;
margin-top: 16px;
gap: 8px;
color: light-dark(@dark, @beige);
.add-button {
border-radius: 50%;
width: 24px;
height: 24px;
font-size: 12px;
}
}
}
.domains-container {
display: grid;
grid-template-columns: 1fr 1fr 1fr 1fr 1fr 1fr;
gap: 8px;
.domain-container {
position: relative;
display: flex;
justify-content: center;
border: 1px solid light-dark(@dark-blue, @golden);
border-radius: 6px;
&.selectable {
height: 100%;
background: inherit;
padding: 0;
}
&.inactive {
opacity: 0.5;
}
.domain-label {
position: absolute;
top: 4px;
border: 1px solid light-dark(@dark-blue, @golden);
border-radius: 6px;
padding: 0 2px;
color: light-dark(@dark, @beige);
background-image: url('../assets/parchments/dh-parchment-dark.png');
white-space: nowrap;
text-wrap: auto;
text-align: center;
z-index: 2;
}
img {
border-radius: 6px;
filter: @beige-filter;
}
}
}
.domain-edit-container {
display: grid;
grid-template-rows: 0fr;
transition: grid-template-rows 0.3s ease-in-out;
overflow: hidden;
&.extended {
grid-template-rows: 1fr;
fieldset {
opacity: 1;
}
}
fieldset {
overflow: hidden;
opacity: 0;
transition: opacity 0.3s ease-in-out;
legend {
display: flex;
align-items: center;
gap: 4px;
button {
border-radius: 50%;
font-size: 12px;
height: 24px;
width: 24px;
margin-right: 4px;
}
}
.domain-filepicker-row {
width: 100%;
.form-group {
flex: 1;
gap: 8px;
.form-fields {
flex: 1;
display: flex;
file-picker {
flex: 1;
}
}
}
}
textarea {
width: 100%;
height: 120px;
margin-top: 4px;
}
}
}
}
}

View file

@ -119,6 +119,7 @@
top: -7px;
font-size: 12px;
font-variant: petite-caps;
z-index: 2;
}
input {

View file

@ -5,6 +5,8 @@
@golden-10: #f3c26710;
@golden-40: #f3c26740;
@golden-bg: #f3c2671a;
@golden-filter: brightness(0) saturate(100%) invert(89%) sepia(13%) saturate(2008%) hue-rotate(332deg) brightness(99%)
contrast(92%);
@chat-blue: #8f87ee;
@chat-blue-10: #8f87ee10;
@ -49,6 +51,7 @@
@dark: #222;
@dark-15: #22222215;
@dark-40: #22222240;
@dark-filter: brightness(0) saturate(100%);
@deep-black: #0e0d15;
@ -56,6 +59,10 @@
@beige-15: #efe6d815;
@beige-50: #efe6d850;
@beige-80: #efe6d880;
@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%);
@soft-white-shadow: rgba(255, 255, 255, 0.05);