Add effects and tabs

This commit is contained in:
2025-12-13 19:34:04 +01:00
parent a0de5ce91a
commit 809a7b80c2
29 changed files with 1241 additions and 253 deletions
+306
View File
@@ -2553,6 +2553,312 @@ i.prismrpg {
.prismrpg .class-content label {
flex: 10%;
}
.prismrpg .character-path-content {
font-family: var(--font-primary);
font-size: calc(var(--font-size-standard) * 1);
color: var(--color-dark-1);
background-image: var(--background-image-base);
background-repeat: no-repeat;
background-size: 100% 100%;
overflow: auto;
}
.prismrpg .character-path-content nav.tabs [data-tab] {
color: #636060;
}
.prismrpg .character-path-content nav.tabs [data-tab].active {
color: #252424;
}
.prismrpg .character-path-content input:disabled,
.prismrpg .character-path-content select:disabled {
background-color: rgba(0, 0, 0, 0.2);
border-color: transparent;
color: var(--color-dark-3);
}
.prismrpg .character-path-content input,
.prismrpg .character-path-content select {
height: 1.5rem;
background-color: rgba(0, 0, 0, 0.1);
border-color: var(--color-dark-6);
color: var(--color-dark-2);
}
.prismrpg .character-path-content input[name="name"] {
height: 2.5rem;
margin-right: 4px;
font-family: var(--font-secondary);
font-size: calc(var(--font-size-standard) * 1.2);
font-weight: bold;
border: none;
}
.prismrpg .character-path-content fieldset {
margin-bottom: 4px;
border-radius: 4px;
}
.prismrpg .character-path-content .form-fields input,
.prismrpg .character-path-content .form-fields select {
text-align: center;
font-size: calc(var(--font-size-standard) * 1);
}
.prismrpg .character-path-content .form-fields select {
font-family: var(--font-secondary);
font-size: calc(var(--font-size-standard) * 1);
}
.prismrpg .character-path-content legend {
font-family: var(--font-secondary);
font-size: calc(var(--font-size-standard) * 1.2);
font-weight: bold;
letter-spacing: 1px;
}
.prismrpg .character-path-content .form-fields {
padding-top: 4px;
}
.prismrpg .character-path-content .form-group {
display: flex;
flex: 1;
flex-direction: row;
}
.prismrpg .character-path-content .form-group label {
align-content: center;
min-width: 10rem;
max-width: 10rem;
}
.prismrpg .character-path-content .form-group select,
.prismrpg .character-path-content .form-group input {
text-align: left;
min-width: 12rem;
max-width: 12rem;
}
.prismrpg .character-path-content .form-group input[type="checkbox"] {
min-width: 1.2rem;
max-width: 1.2rem;
margin-right: 0.5rem;
}
.prismrpg .character-path-content label {
font-family: var(--font-secondary);
font-size: calc(var(--font-size-standard) * 1);
flex: 50%;
}
.prismrpg .character-path-content .align-top {
align-self: flex-start;
padding: 0.1rem;
margin-right: 0.2rem;
}
.prismrpg .character-path-content .shift-right {
margin-left: 2rem;
}
.prismrpg .character-path-content .header {
display: flex;
}
.prismrpg .character-path-content .header img {
width: 50px;
height: 50px;
}
.prismrpg .character-path-content input[type="checkbox"] {
font-size: var(--font-size-14);
width: 20px;
padding-top: 0;
}
.prismrpg .character-path-content input[type="checkbox"]:checked {
background-color: rgba(0, 0, 0, 0.1);
}
.prismrpg .character-path-content input[type="checkbox"]:checked::after {
color: rgba(0, 0, 0, 0.1);
}
.prismrpg .effects-container {
padding: 0.5rem;
}
.prismrpg .effect-category {
margin-bottom: 1rem;
border: 1px solid rgba(0, 0, 0, 0.2);
border-radius: 4px;
overflow: hidden;
background: rgba(255, 255, 255, 0.02);
}
.prismrpg .effect-category:last-child {
margin-bottom: 0;
}
.prismrpg .stat-list {
list-style: none;
margin: 0;
padding: 0;
}
.prismrpg .stat-list.alternate-list .list-item {
padding: 0.4rem 0.6rem;
border-bottom: 1px solid rgba(0, 0, 0, 0.1);
align-items: center;
gap: 0.5rem;
min-height: 32px;
}
.prismrpg .stat-list.alternate-list .list-item.items-title-bg {
background: linear-gradient(to bottom, rgba(0, 0, 0, 0.25), rgba(0, 0, 0, 0.15));
border-bottom: 2px solid rgba(0, 0, 0, 0.4);
padding: 0.5rem 0.6rem;
font-weight: bold;
box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.1);
}
.prismrpg .stat-list.alternate-list .list-item.items-title-bg h3 {
margin: 0;
font-size: 1rem;
font-family: var(--font-secondary);
color: rgba(0, 0, 0, 0.9);
text-shadow: 0 1px 2px rgba(255, 255, 255, 0.3);
font-weight: bold;
}
.prismrpg .stat-list.alternate-list .list-item.items-title-bg .short-label {
font-size: 0.7rem;
text-transform: uppercase;
font-weight: 600;
color: rgba(0, 0, 0, 0.7);
letter-spacing: 0.5px;
}
.prismrpg .stat-list.alternate-list .list-item.list-item-shadow {
transition: all 0.2s ease;
background: rgba(255, 255, 255, 0.05);
}
.prismrpg .stat-list.alternate-list .list-item.list-item-shadow:hover {
background: rgba(255, 255, 255, 0.15);
box-shadow: 0 1px 3px rgba(0, 0, 0, 0.2);
}
.prismrpg .stat-list.alternate-list .list-item:last-child {
border-bottom: none;
}
.prismrpg .sheet-competence-img {
width: 28px;
height: 28px;
border: 1px solid rgba(0, 0, 0, 0.3);
border-radius: 4px;
object-fit: cover;
flex-shrink: 0;
box-shadow: 0 1px 2px rgba(0, 0, 0, 0.2);
}
.prismrpg .item-name-img {
display: flex;
align-items: center;
flex-shrink: 0;
text-decoration: none;
}
.prismrpg .item-name-img:hover .sheet-competence-img {
border-color: rgba(13, 110, 253, 0.6);
box-shadow: 0 2px 4px rgba(13, 110, 253, 0.3);
}
.prismrpg .item-name-label-header-long {
flex: 2;
display: flex;
align-items: center;
}
.prismrpg .item-name-label-header-long .items-title-text {
font-weight: bold;
}
.prismrpg .item-name-label-long {
flex: 2;
font-weight: 500;
overflow: hidden;
text-overflow: ellipsis;
white-space: nowrap;
color: rgba(0, 0, 0, 0.9);
font-size: 0.9rem;
}
.prismrpg .item-field-label-short {
flex: 0 0 90px;
font-size: 0.8rem;
text-align: center;
overflow: hidden;
text-overflow: ellipsis;
white-space: nowrap;
color: rgba(0, 0, 0, 0.7);
font-style: italic;
}
.prismrpg .item-field-label-medium {
flex: 0 0 100px;
font-size: 0.8rem;
text-align: center;
overflow: hidden;
text-overflow: ellipsis;
white-space: nowrap;
color: rgba(0, 0, 0, 0.7);
font-style: italic;
}
.prismrpg .item-filler {
flex: 1;
min-width: 10px;
}
.prismrpg .item-controls {
display: flex;
gap: 0.3rem;
align-items: center;
flex-shrink: 0;
}
.prismrpg .item-controls.item-controls-fixed {
flex: 0 0 auto;
}
.prismrpg .item-controls.effect-controls {
gap: 0.25rem;
}
.prismrpg .effect-control {
display: flex;
align-items: center;
justify-content: center;
width: 28px;
height: 28px;
border: 1px solid rgba(0, 0, 0, 0.2);
background: linear-gradient(to bottom, rgba(255, 255, 255, 0.8), rgba(240, 240, 240, 0.8));
border-radius: 4px;
cursor: pointer;
transition: all 0.15s ease;
color: rgba(0, 0, 0, 0.7);
text-decoration: none;
padding: 0;
box-shadow: 0 1px 2px rgba(0, 0, 0, 0.1);
}
.prismrpg .effect-control i {
font-size: 0.85rem;
margin: 0;
}
.prismrpg .effect-control:hover {
background: linear-gradient(to bottom, #ffffff, #e6e6e6);
border-color: rgba(0, 0, 0, 0.4);
box-shadow: 0 2px 4px rgba(0, 0, 0, 0.2);
transform: translateY(-1px);
}
.prismrpg .effect-control:active {
transform: translateY(0);
box-shadow: 0 1px 2px rgba(0, 0, 0, 0.2);
}
.prismrpg .effect-control.item-edit:hover {
background: linear-gradient(to bottom, rgba(13, 110, 253, 0.2), rgba(13, 110, 253, 0.3));
color: #0d6efd;
border-color: rgba(13, 110, 253, 0.5);
}
.prismrpg .effect-control[data-action="create-effect"] {
width: auto;
padding: 0.3rem 0.5rem;
gap: 0.3rem;
font-size: 0.7rem;
font-weight: 600;
background: linear-gradient(to bottom, rgba(40, 167, 69, 0.25), rgba(40, 167, 69, 0.35));
border-color: rgba(40, 167, 69, 0.4);
color: #19642a;
text-transform: uppercase;
letter-spacing: 0.3px;
}
.prismrpg .effect-control[data-action="create-effect"]:hover {
background: linear-gradient(to bottom, rgba(40, 167, 69, 0.35), rgba(40, 167, 69, 0.45));
border-color: rgba(40, 167, 69, 0.6);
color: #19642a;
}
.prismrpg .effect-control[data-action="create-effect"] i {
font-size: 0.75rem;
}
.prismrpg .effect-control[data-action="effect-delete"]:hover {
background: linear-gradient(to bottom, rgba(220, 53, 69, 0.2), rgba(220, 53, 69, 0.3));
color: #dc3545;
border-color: rgba(220, 53, 69, 0.5);
}
.prismrpg .flexrow {
display: flex;
flex-direction: row;
align-items: center;
gap: 0.5rem;
}
.application.dialog.prismrpg {
color: var(--color-dark-1);
}