Initial system import

This commit is contained in:
2025-12-25 23:08:06 +01:00
commit 4beb5806eb
4623 changed files with 682363 additions and 0 deletions
+39
View File
@@ -0,0 +1,39 @@
.weapon-content {
.sheet-common();
.item-sheet-common();
.header {
display: flex;
img {
width: 50px;
height: 50px;
}
}
fieldset {
margin-top: 8px;
.form-group {
display: flex;
align-items: center;
}
.form-group label {
}
.form-group.long-input input {
min-width: 24rem;
max-width: 24rem;
text-align: left;
}
.form-group input {
min-width: 12rem;
max-width: 12rem;
}
.form-group select {
min-width: 12rem;
max-width: 12rem;
}
}
label {
flex: 10%;
}
}
+35
View File
@@ -0,0 +1,35 @@
.armor-content {
.sheet-common();
.item-sheet-common();
.header {
background-color: var(--color-light-1);
display: flex;
img {
width: 50px;
height: 50px;
}
}
fieldset {
margin-top: 8px;
.form-group {
display: flex;
align-items: center;
}
.form-group label {
}
.form-group input {
min-width: 12rem;
max-width: 12rem;
}
.form-group select {
min-width: 12rem;
max-width: 12rem;
}
}
label {
flex: 10%;
}
}
+87
View File
@@ -0,0 +1,87 @@
&.ask-roll {
display: flex;
flex-direction: column;
align-items: center;
justify-content: center;
font-family: var(--font-secondary);
font-size: calc(var(--font-size-standard) * 1.1);
}
.hamalron-tarot-draw {
padding: 0.5rem;
.tarot-draw-header {
margin-bottom: 1rem;
.tarot-draw-title {
display: flex;
align-items: center;
gap: 0.5rem;
margin: 0;
padding-bottom: 0.5rem;
border-bottom: 2px solid var(--color-border-dark);
font-size: 1.25rem;
color: var(--color-text-dark-primary);
i {
color: #667eea;
}
}
}
.tarot-draw-content {
display: flex;
gap: 1rem;
.tarot-card-image {
flex-shrink: 0;
img {
width: 150px;
height: 150px;
object-fit: cover;
border-radius: 0.25rem;
border: 2px solid var(--color-border-dark);
box-shadow: 0 2px 4px rgba(0, 0, 0, 0.3);
}
}
.tarot-card-details {
flex: 1;
display: flex;
flex-direction: column;
gap: 0.5rem;
.tarot-detail-row {
display: flex;
gap: 0.5rem;
.detail-label {
font-weight: bold;
color: var(--color-text-dark-secondary);
}
.detail-value {
color: var(--color-text-dark-primary);
}
}
.tarot-description {
margin-top: 0.5rem;
padding-top: 0.5rem;
border-top: 1px solid var(--color-border-dark);
.description-label {
font-weight: bold;
color: var(--color-text-dark-secondary);
margin-bottom: 0.25rem;
}
.description-content {
color: var(--color-text-dark-primary);
font-style: italic;
}
}
}
}
}
+39
View File
@@ -0,0 +1,39 @@
.perk-content {
.sheet-common();
.item-sheet-common();
fieldset {
margin-top: 8px;
.form-group {
display: flex;
align-items: center;
}
.form-group label {
}
.form-group.long-input input {
min-width: 24rem;
max-width: 24rem;
text-align: left;
}
.form-group input {
min-width: 12rem;
max-width: 12rem;
}
.form-group select {
min-width: 12rem;
max-width: 12rem;
}
}
.header {
display: flex;
img {
width: 50px;
height: 50px;
}
}
label {
flex: 10%;
}
}
+34
View File
@@ -0,0 +1,34 @@
.equipment-content {
.sheet-common();
.item-sheet-common();
fieldset {
margin-top: 8px;
.form-group {
display: flex;
align-items: center;
}
.form-group label {
}
.form-group input {
min-width: 12rem;
max-width: 12rem;
}
.form-group select {
min-width: 12rem;
max-width: 12rem;
}
}
.header {
display: flex;
img {
width: 50px;
height: 50px;
}
}
label {
flex: 10%;
}
}
+7
View File
@@ -0,0 +1,7 @@
.faction-sheet-common {
.form-fields {
display: grid;
grid-template-columns: repeat(2, 1fr);
column-gap: 0.5rem;
}
}
+9
View File
@@ -0,0 +1,9 @@
@font-face {
font-family: "MinionProRegular";
src: url("../assets/fonts/Minion Pro Regular.ttf") format("truetype");
}
@font-face {
font-family: "SupernaturalKnight";
src: url("../assets/fonts/Supernatural_Knight.ttf") format("truetype");
}
+23
View File
@@ -0,0 +1,23 @@
@import "fonts.less";
@import "global.less";
.fvtt-hamalron {
@import "mixins.less";
@import "personnage.less";
@import "personnage-tarot.less";
@import "pnj.less";
@import "arme.less";
@import "armure.less";
@import "competence.less";
@import "equipement.less";
@import "faction.less";
@import "langue.less";
@import "peuple.less";
@import "region.less";
@import "sortilege.less";
@import "tarot.less";
@import "tarot-deck-manager.less";
@import "chat.less";
}
@import "roll.less";
+80
View File
@@ -0,0 +1,80 @@
:root {
--font-size-standard: 0.9rem;
--font-size-result: 1.4rem;
--background-image-base: url("../assets/ui/sheet_background_01.webp");
--font-primary: "MinionProRegular";
--font-secondary: "MinionProRegular";
--font-title: "SupernaturalKnight";
--logo-standard: url("../assets/ui/pentagram_logo.webp");
--title-color: #c9a876;
--background-box: #e0dcdc;
--color-success: rgb(15, 122, 15);
--color-failure: #8b7355;
--color-warning: darkorange;
--color-critical-success: rgb(21, 39, 204);
--color-critical-failure: rgb(141, 32, 231);
}
body {
--color-light-1: rgba(182, 178, 178, 0.6);
--color-warm-1: #c9a876;
}
#logo {
content: var(--logo-standard);
width: 100px;
height: 50px;
margin-left: 15px;
}
.scrollable-content {
max-height: 600px; // Définissez la hauteur maximale selon vos besoins
overflow-y: auto; // Active le défilement vertical quand nécessaire
padding-right: 10px; // Espace pour la barre de défilement
}
nav.tabs [data-tab] {
color: var(--title-color);
}
#pause > img {
content: var(--logo-standard);
height: 256px;
width: 256px;
top: -45px;
left: calc(50% - 96px);
}
i.fvtt-hamalron {
width: 36px;
height: 36px;
background-image: var(--logo-standard);
background-size: 100%;
background-position: center;
background-repeat: no-repeat;
display: flex;
position: relative;
filter: grayscale(1);
transition: 0.3s;
}
.application.dialog.fvtt-hamalron {
font-family: var(--font-primary);
font-size: calc(var(--font-size-standard) * 1);
background-image: var(--background-image-base);
button:hover {
background: var(--color-dark-6);
}
.legend {
font-family: var(--font-primary);
}
}
.chat-message,
.chat-message.whisper {
font-family: var(--font-primary);
background-image: var(--background-image-base);
background-repeat: repeat-y;
background-position: 0%;
background-size: 100% 100%;
}
+7
View File
@@ -0,0 +1,7 @@
.langue-sheet-common {
.form-fields {
display: grid;
grid-template-columns: repeat(2, 1fr);
column-gap: 0.5rem;
}
}
+99
View File
@@ -0,0 +1,99 @@
.sheet-common() {
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%;
input:disabled,
select:disabled {
background-color: rgba(0, 0, 0, 0.2);
border-color: transparent;
color: var(--color-dark-3);
}
input,
select {
background-color: rgba(0, 0, 0, 0.1);
border-color: var(--color-dark-6);
color: var(--color-dark-2);
}
input[name="name"] {
height: 40px;
margin-right: 10px;
font-family: var(--font-title);
font-size: calc(var(--font-size-standard) * 1.2);
font-weight: bold;
border: none;
margin-top: 4px;
}
fieldset {
margin-bottom: 4px;
border-radius: 4px;
}
.form-fields {
input,
select {
text-align: center;
font-size: calc(var(--font-size-standard) * 1.0);
}
select {
font-family: var(--font-secondary);
font-size: calc(var(--font-size-standard) * 1.0);
}
}
legend {
font-family: var(--font-secondary);
font-size: calc(var(--font-size-standard) * 1.2);
font-weight: bold;
letter-spacing: 1px;
}
}
.character-sheet-common {
label {
font-family: var(--font-secondary);
font-size: calc(var(--font-size-standard) * 1.0);
}
}
.vehicle-sheet-common {
label {
font-family: var(--font-secondary);
font-size: calc(var(--font-size-standard) * 1.0);
}
}
.enemy-sheet-common {
label {
font-family: var(--font-secondary);
font-size: calc(var(--font-size-standard) * 1.0);
}
}
.item-sheet-common {
.form-fields {
padding-top: 4px;
}
label {
font-family: var(--font-secondary);
font-size: calc(var(--font-size-standard) * 1.0);
flex: 50%;
}
.align-top {
align-self: flex-start;
padding: 0.1rem;
margin-right: 0.2rem;
}
.shift-right {
margin-left: 2rem;
}
}
+273
View File
@@ -0,0 +1,273 @@
.personnage {
.tarot-hand-container {
padding: 1rem;
height: 100%;
display: flex;
flex-direction: column;
.tarot-hand-header {
display: flex;
justify-content: space-between;
align-items: center;
margin-bottom: 1.5rem;
padding-bottom: 0.75rem;
border-bottom: 2px solid var(--color-border-dark);
h2 {
margin: 0;
font-size: 1.5rem;
color: var(--color-text-dark-primary);
}
.tarot-hand-info {
.card-count {
display: flex;
align-items: center;
gap: 0.5rem;
padding: 0.5rem 1rem;
background: rgba(102, 126, 234, 0.2);
border-radius: 0.25rem;
border: 1px solid rgba(102, 126, 234, 0.4);
font-weight: bold;
color: var(--color-text-light-heading);
i {
color: #667eea;
}
}
}
}
.tarot-hand-cards {
display: grid;
grid-template-columns: repeat(auto-fill, minmax(250px, 1fr));
gap: 1.5rem;
overflow-y: auto;
padding-right: 0.5rem;
.tarot-card-wrapper {
perspective: 1000px;
cursor: grab;
&:active {
cursor: grabbing;
}
.tarot-card {
position: relative;
width: 100%;
height: 400px;
transition: transform 0.3s ease;
&:hover {
transform: translateY(-5px);
}
.tarot-card-inner {
position: relative;
width: 100%;
height: 100%;
border-radius: 0.5rem;
box-shadow: 0 4px 8px rgba(0, 0, 0, 0.3);
overflow: hidden;
.tarot-card-front {
width: 100%;
height: 100%;
background: linear-gradient(
135deg,
rgba(20, 20, 30, 0.95) 0%,
rgba(40, 40, 50, 0.95) 100%
);
border: 2px solid var(--color-border-dark);
border-radius: 0.5rem;
display: flex;
flex-direction: column;
padding: 0.75rem;
.tarot-card-header {
display: flex;
justify-content: space-between;
align-items: flex-start;
margin-bottom: 0.75rem;
.tarot-card-name {
margin: 0;
font-size: 1.1rem;
font-weight: bold;
color: #667eea;
flex: 1;
line-height: 1.3;
}
.tarot-card-controls {
display: flex;
gap: 0.25rem;
.card-control {
display: flex;
align-items: center;
justify-content: center;
width: 24px;
height: 24px;
border-radius: 0.25rem;
background: rgba(0, 0, 0, 0.3);
color: var(--color-text-light-heading);
transition: all 0.2s ease;
&:hover {
background: rgba(102, 126, 234, 0.5);
color: white;
}
i {
font-size: 0.75rem;
}
}
}
}
.tarot-card-image {
width: 100%;
height: 150px;
margin-bottom: 0.75rem;
border-radius: 0.25rem;
overflow: hidden;
border: 1px solid var(--color-border-dark);
background: rgba(0, 0, 0, 0.3);
img {
width: 100%;
height: 100%;
object-fit: cover;
}
}
.tarot-card-info {
display: flex;
flex-direction: column;
gap: 0.5rem;
margin-bottom: 0.75rem;
.card-info-row {
display: flex;
justify-content: space-between;
align-items: center;
padding: 0.4rem 0.5rem;
background: rgba(0, 0, 0, 0.2);
border-radius: 0.25rem;
font-size: 0.875rem;
.info-label {
display: flex;
align-items: center;
gap: 0.35rem;
color: var(--color-text-dark-secondary);
font-weight: 500;
i {
font-size: 0.75rem;
opacity: 0.7;
}
}
.info-value {
color: var(--color-text-light-heading);
font-weight: bold;
&.symbole-coupe {
color: #3498db;
}
&.symbole-epee {
color: #d4a574;
}
&.symbole-denier {
color: #f39c12;
}
&.symbole-baton {
color: #2ecc71;
}
}
}
}
.tarot-card-description {
flex: 1;
overflow-y: auto;
padding: 0.5rem;
background: rgba(0, 0, 0, 0.2);
border-radius: 0.25rem;
border: 1px solid var(--color-border-dark);
.description-text {
font-size: 0.8rem;
line-height: 1.4;
color: var(--color-text-dark-primary);
p {
margin: 0 0 0.5rem 0;
&:last-child {
margin-bottom: 0;
}
}
}
&::-webkit-scrollbar {
width: 4px;
}
&::-webkit-scrollbar-track {
background: rgba(0, 0, 0, 0.2);
border-radius: 2px;
}
&::-webkit-scrollbar-thumb {
background: rgba(102, 126, 234, 0.5);
border-radius: 2px;
&:hover {
background: rgba(102, 126, 234, 0.7);
}
}
}
}
}
}
}
}
.tarot-hand-empty {
flex: 1;
display: flex;
align-items: center;
justify-content: center;
.empty-state {
text-align: center;
color: var(--color-text-dark-secondary);
max-width: 400px;
i {
opacity: 0.2;
margin-bottom: 1rem;
}
h3 {
margin: 0 0 0.5rem 0;
font-size: 1.25rem;
color: var(--color-text-dark-primary);
}
p {
margin: 0;
font-style: italic;
opacity: 0.8;
}
}
}
}
}
+658
View File
@@ -0,0 +1,658 @@
.character-content {
.sheet-common();
.character-sheet-common();
overflow: scroll;
}
.sheet-tabs {
background-color: var(--color-light-1);
}
.character-main {
/*background-color: var(--color-light-1);*/
display: flex;
.character-pc {
display: flex;
gap: 4px;
flex: 1;
.character-left {
min-width: 180px;
display: flex;
flex-direction: column;
.character-left-image {
display: flex;
justify-content: center;
align-items: center;
padding-bottom: 8px;
.character-img {
height: 140px;
width: auto;
border: none;
}
}
.character-hp {
gap: 2px;
align-items: center;
input {
flex: none;
width: 2.5rem;
margin-left: 2px;
margin-right: 4px;
}
.hp-separator {
font-size: calc(var(--font-size-standard) * 1.2);
display: flex;
align-items: center;
justify-content: center;
}
}
.character-dv,
.character-dmax {
.form-fields {
flex: none;
}
}
}
.character-right {
display: flex;
flex-direction: column;
gap: 5px;
.character-definition {
.character-definition-pronouns {
input {
min-width: 21.2rem;
max-width: 21.2rem;
}
}
.form-group {
display: flex;
align-items: center;
margin-bottom: 4px;
}
.splitted {
display: flex;
flex-direction: row;
gap: 4px;
}
label {
max-width: 5rem;
min-width: 5rem;
}
input {
text-align: left;
min-width: 9rem;
max-width: 9rem;
margin-bottom: auto;
}
.trait {
min-width: 7rem;
max-width: 7rem;
margin-right: 1rem;
margin-bottom: auto;
}
}
.character-name {
display: flex;
input {
font-family: var(--font-title);
font-size: var(--font-size-title);
width: 400px;
}
}
label {
min-width: 120px;
}
}
}
.character-pc-play {
min-width: 500px;
}
.character-pc-edit {
min-width: 500px;
}
.character-stats {
/*background-color: var(--color-light-1);*/
display: flex;
flex-direction: column;
gap: 5px;
flex: 1;
.character-stat {
display: flex;
align-items: center;
.icon-stat {
width: 24px;
height: 24px;
margin-right: 4px;
}
.rollable:hover,
.rollable:focus {
text-shadow: 0 0 8px var(--color-shadow-primary);
cursor: pointer;
}
.rollable {
min-width: 3.5rem;
max-width: 3.5rem;
}
input {
min-width: 2.5rem;
max-width: 2.5rem;
}
}
}
.character-stats-play {
min-width: 120px;
}
.character-stats-edit {
min-width: 120px;
}
}
.tab.character-status .main-div {
/*background-color: var(--color-light-1);*/
display: grid;
grid-template-columns: 1fr;
legend {
a {
font-size: calc(var(--font-size-standard) * 1.4);
padding-left: 5px;
}
}
.mortality {
display: flex;
align-items: center;
gap: 4px;
margin-left: 4px;
min-width: 12rem;
max-width: 12rem;
label {
min-width: 5rem;
max-width: 5rem;
}
}
.counters {
display: flex;
direction: column;
align-items: center;
gap: 4px;
margin-left: 4px;
.characteristics-label {
color: grey;
font-size: small;
}
label {
min-width: 4rem;
max-width: 4rem;
}
.spaced-left {
margin-left: 0.8rem;
}
input {
min-width: 2.5rem;
max-width: 2.5rem;
}
}
.ailments {
display: grid;
grid-template-columns: repeat(5, 1fr);
gap: 4px;
.ailment {
display: flex;
align-items: center;
gap: 4px;
margin-left: 4px;
min-width: 8rem;
max-width: 8rem;
label {
min-width: 5rem;
max-width: 5rem;
}
.item-img {
width: 24px;
height: 24px;
margin: 4px 0 0 0;
}
}
}
.perks {
display: grid;
grid-template-columns: repeat(1, 1fr);
gap: 4px;
.perk {
display: flex;
align-items: center;
gap: 4px;
margin-left: 4px;
min-width: 20rem;
max-width: 20rem;
.rollable:hover,
.rollable:focus {
text-shadow: 0 0 8px var(--color-shadow-primary);
cursor: pointer;
}
.controls {
font-size: 0.7rem;
min-width: 1.8rem;
max-width: 1.8rem;
}
.flavor {
min-width: 24rem;
max-width: 24rem;
}
.role {
min-width: 5rem;
max-width: 5rem;
}
.level {
min-width: 4rem;
max-width: 4rem;
}
.name {
min-width: 10rem;
max-width: 10rem;
}
.item-img {
width: 24px;
height: 24px;
margin: 4px 0 0 0;
}
}
}
}
.tab.character-maleficas .main-div {
/*background-color: var(--color-light-1);*/
display: grid;
grid-template-columns: 1fr;
legend {
a {
font-size: calc(var(--font-size-standard) * 1.4);
padding-left: 5px;
}
}
.maleficas {
display: grid;
grid-template-columns: repeat(2, 1fr);
gap: 4px;
.malefica {
display: flex;
align-items: center;
gap: 4px;
min-width: 20rem;
max-width: 20rem;
.controls {
font-size: 0.7rem;
min-width: 1.8rem;
max-width: 1.8rem;
}
.name {
min-width: 10rem;
max-width: 10rem;
}
.damage {
min-width: 3.2rem;
max-width: 3.2rem;
}
.domain {
min-width: 4rem;
max-width: 4rem;
}
.level {
min-width: 2rem;
max-width: 2rem;
}
.item-img {
width: 24px;
height: 24px;
margin: 4px 0 0 0;
}
}
}
.rituals {
display: grid;
grid-template-columns: repeat(1, 1fr);
gap: 4px;
.ritual {
display: flex;
align-items: center;
gap: 4px;
min-width: 14rem;
max-width: 14rem;
.controls {
font-size: 0.7rem;
min-width: 1.8rem;
max-width: 1.8rem;
}
.ingredients {
min-width: 24rem;
max-width: 24rem;
}
.name {
min-width: 12rem;
max-width: 12rem;
}
.difficulty {
min-width: 2rem;
max-width: 2rem;
}
.threshold {
min-width: 2rem;
max-width: 2rem;
}
.limit {
min-width: 2rem;
max-width: 2rem;
}
.item-img {
width: 24px;
height: 24px;
margin: 4px 0 0 0;
}
}
}
}
.tab.character-equipment .main-div {
/*background-color: var(--color-light-1);*/
display: grid;
grid-template-columns: 1fr;
legend {
a {
font-size: calc(var(--font-size-standard) * 1.4);
padding-left: 5px;
}
}
.limboes {
display: flex;
flex-direction: row;
.limboes-line {
display: flex;
flex-direction: row;
}
.form-group {
display: flex;
flex-direction: row;
align-items: center;
gap: 4px;
margin-left: 4px;
min-width: 6rem;
max-width: 6rem;
}
.ammo-quantity {
text-align: left;
max-width: 3rem;
min-width: 3rem;
}
input {
text-align: left;
min-width: 8rem;
max-width: 8rem;
}
}
.weapons {
display: grid;
grid-template-columns: repeat(1, 1fr);
gap: 4px;
.weapon {
display: flex;
align-items: center;
gap: 4px;
min-width: 13rem;
max-width: 13rem;
.rollable:hover,
.rollable:focus {
text-shadow: 0 0 8px var(--color-shadow-primary);
cursor: pointer;
}
.controls {
font-size: 0.7rem;
min-width: 1.8rem;
max-width: 1.8rem;
}
.properties {
min-width: 16.3rem;
max-width: 16.3rem;
}
.range {
min-width: 4.5rem;
max-width: 4.5rem;
}
.ammo {
min-width: 4.5rem;
max-width: 4.5rem;
}
.ammoQuantity {
min-width: 4.2rem;
max-width: 4.2rem;
}
.type {
min-width: 3rem;
max-width: 3rem;
}
.damage {
min-width: 4rem;
max-width: 4rem;
}
.name {
min-width: 10rem;
max-width: 10rem;
}
.item-img {
width: 24px;
height: 24px;
margin: 4px 0 0 0;
}
}
}
.armors {
display: grid;
grid-template-columns: repeat(2, 1fr);
gap: 4px;
.armor {
display: flex;
align-items: center;
gap: 4px;
min-width: 13rem;
max-width: 13rem;
.controls {
font-size: 0.7rem;
min-width: 1.8rem;
max-width: 1.8rem;
}
.bonus {
min-width: 2rem;
max-width: 2rem;
}
.resilience {
min-width: 2rem;
max-width: 2rem;
}
.reduction {
min-width: 2rem;
max-width: 2rem;
}
.name {
min-width: 13.5rem;
max-width: 13.5rem;
}
.item-img {
width: 24px;
height: 24px;
margin: 4px 0 0 0;
}
}
}
.equipments {
display: grid;
grid-template-columns: repeat(3, 1fr);
gap: 4px;
.equipment {
display: flex;
align-items: center;
gap: 4px;
min-width: 13rem;
max-width: 13rem;
.rollable:hover,
.rollable:focus {
text-shadow: 0 0 8px var(--color-shadow-primary);
cursor: pointer;
}
.controls {
font-size: 0.7rem;
min-width: 1.8rem;
max-width: 1.8rem;
}
.name {
min-width: 10rem;
max-width: 10rem;
}
.quantity {
min-width: 2rem;
max-width: 2rem;
}
.item-img {
width: 24px;
height: 24px;
margin: 4px 0 0 0;
}
}
}
prose-mirror.inactive {
min-height: 40px;
}
prose-mirror.active {
min-height: 150px;
}
}
.tab.character-biography .main-div {
/*background-color: var(--color-light-1);*/
display: grid;
grid-template-columns: 1fr;
legend {
a {
font-size: calc(var(--font-size-standard) * 1.4);
padding-left: 5px;
}
}
.splitted-text {
display: flex;
flex-direction: row;
gap: 4px;
fieldset {
width: 100%;
}
}
.deals {
display: grid;
grid-template-columns: repeat(3, 1fr);
gap: 4px;
.deal {
display: flex;
align-items: center;
gap: 4px;
margin-left: 4px;
min-width: 12rem;
max-width: 12rem;
.rollable:hover,
.rollable:focus {
text-shadow: 0 0 8px var(--color-shadow-primary);
cursor: pointer;
}
.controls {
font-size: 0.7rem;
min-width: 1.8rem;
max-width: 1.8rem;
}
.name {
min-width: 10rem;
max-width: 10rem;
}
.item-img {
width: 24px;
height: 24px;
margin: 4px 0 0 0;
}
}
}
.aliases {
display: flex;
flex-direction: row;
align-items: center;
margin-bottom: 4px;
margin-left: 4px;
.form-group {
label {
min-width: 6rem;
max-width: 6rem;
}
display: flex;
flex-direction: row;
align-items: center;
gap: 4px;
margin-left: 4px;
}
input {
text-align: left;
min-width: 41rem;
max-width: 41rem;
}
}
.biodata {
display: grid;
grid-template-columns: repeat(3, 1fr);
gap: 4px;
.experience {
display: flex;
flex-direction: row;
align-items: center;
gap: 4px;
margin-left: 4px;
}
.form-group {
label {
min-width: 6rem;
max-width: 6rem;
}
display: flex;
flex-direction: row;
align-items: center;
gap: 4px;
margin-left: 4px;
min-width: 14rem;
max-width: 14rem;
}
input {
text-align: left;
min-width: 8rem;
max-width: 8rem;
}
}
prose-mirror.inactive {
min-height: 40px;
}
prose-mirror.active {
min-height: 150px;
}
}
+7
View File
@@ -0,0 +1,7 @@
.peuple-sheet-common {
.form-fields {
display: grid;
grid-template-columns: repeat(2, 1fr);
column-gap: 0.5rem;
}
}
+489
View File
@@ -0,0 +1,489 @@
.enemy-content {
.sheet-common();
.enemy-sheet-common();
overflow: scroll;
}
.sheet-tabs {
background-color: var(--color-light-1);
}
.enemy-main {
/*background-color: var(--color-light-1);*/
display: flex;
.enemy-pc {
display: flex;
gap: 4px;
flex: 1;
.enemy-left {
min-width: 180px;
display: flex;
flex-direction: column;
.enemy-left-image {
display: flex;
justify-content: center;
align-items: center;
padding-bottom: 8px;
.enemy-img {
height: 140px;
width: auto;
border: none;
}
}
.enemy-hp {
gap: 2px;
align-items: center;
input {
flex: none;
width: 2.5rem;
margin-left: 2px;
margin-right: 4px;
}
.hp-separator {
font-size: calc(var(--font-size-standard) * 1.2);
display: flex;
align-items: center;
justify-content: center;
}
}
.enemy-dv,
.enemy-dmax {
.form-fields {
flex: none;
}
}
}
.enemy-right {
display: flex;
flex-direction: column;
gap: 5px;
.enemy-definition {
.form-group {
display: flex;
align-items: center;
margin-bottom: 4px;
}
.splitted {
display: flex;
flex-direction: row;
gap: 4px;
}
label {
max-width: 5rem;
min-width: 5rem;
}
input {
text-align: left;
min-width: 18rem;
max-width: 18rem;
margin-bottom: auto;
}
.trait {
min-width: 7rem;
max-width: 7rem;
margin-right: 1rem;
margin-bottom: auto;
}
}
.enemy-name {
display: flex;
input {
font-family: var(--font-title);
font-size: var(--font-size-title);
width: 400px;
}
}
label {
min-width: 120px;
}
}
}
.enemy-pc-play {
min-width: 500px;
}
.enemy-pc-edit {
min-width: 500px;
}
.enemy-stats {
/*background-color: var(--color-light-1);*/
display: flex;
flex-direction: column;
gap: 5px;
flex: 1;
.enemy-stat {
display: flex;
align-items: center;
.icon-stat {
width: 24px;
height: 24px;
margin-right: 4px;
}
.rollable:hover,
.rollable:focus {
text-shadow: 0 0 8px var(--color-shadow-primary);
cursor: pointer;
}
.rollable {
min-width: 3.5rem;
max-width: 3.5rem;
}
input {
min-width: 2.5rem;
max-width: 2.5rem;
}
}
}
.enemy-stats-play {
min-width: 120px;
}
.enemy-stats-edit {
min-width: 120px;
}
}
.tab.enemy-traits .main-div {
/*background-color: var(--color-light-1);*/
display: grid;
grid-template-columns: 1fr;
legend {
a {
font-size: calc(var(--font-size-standard) * 1.4);
padding-left: 5px;
}
}
.enemy-column {
display: flex;
flex-direction: row;
gap: 4px;
fieldset {
width: 100%;
}
}
.mortality {
display: flex;
align-items: center;
gap: 4px;
margin-left: 4px;
min-width: 12rem;
max-width: 12rem;
label {
min-width: 5rem;
max-width: 5rem;
}
}
.counters {
display: flex;
direction: column;
align-items: center;
gap: 4px;
margin-left: 4px;
.characteristics-label {
color: grey;
font-size: small;
label {
min-width: 3.5rem;
max-width: 3.5rem;
}
span {
min-width: 3rem;
max-width: 3rem;
}
}
label {
min-width: 4rem;
max-width: 4rem;
}
.spaced-left {
margin-left: 0.8rem;
}
input {
min-width: 2.5rem;
max-width: 2.5rem;
}
}
.traits {
display: grid;
grid-template-columns: repeat(1, 1fr);
gap: 4px;
.trait {
display: flex;
align-items: center;
gap: 4px;
margin-left: 4px;
min-width: 12rem;
max-width: 12rem;
.rollable:hover,
.rollable:focus {
text-shadow: 0 0 8px var(--color-shadow-primary);
cursor: pointer;
}
.controls {
font-size: 0.7rem;
min-width: 1.8rem;
max-width: 1.8rem;
}
.name {
min-width: 18rem;
max-width: 18rem;
}
.item-img {
width: 24px;
height: 24px;
margin: 4px 0 0 0;
}
}
}
.equipments {
display: grid;
grid-template-columns: repeat(3, 1fr);
gap: 4px;
.equipment {
display: flex;
align-items: center;
gap: 4px;
min-width: 13rem;
max-width: 13rem;
.rollable:hover,
.rollable:focus {
text-shadow: 0 0 8px var(--color-shadow-primary);
cursor: pointer;
}
.controls {
font-size: 0.7rem;
min-width: 1.8rem;
max-width: 1.8rem;
}
.name {
min-width: 12rem;
max-width: 12rem;
}
.item-img {
width: 24px;
height: 24px;
margin: 4px 0 0 0;
}
}
}
.ailments {
display: grid;
grid-template-columns: repeat(5, 1fr);
gap: 4px;
.ailment {
display: flex;
align-items: center;
gap: 4px;
margin-left: 4px;
min-width: 8rem;
max-width: 8rem;
label {
min-width: 5rem;
max-width: 5rem;
}
.item-img {
width: 24px;
height: 24px;
margin: 4px 0 0 0;
}
}
}
.maleficas {
display: grid;
grid-template-columns: repeat(1, 1fr);
gap: 4px;
.malefica {
display: flex;
align-items: center;
gap: 4px;
margin-left: 4px;
min-width: 12rem;
max-width: 12rem;
.rollable:hover,
.rollable:focus {
text-shadow: 0 0 8px var(--color-shadow-primary);
cursor: pointer;
}
.controls {
font-size: 0.7rem;
min-width: 1.8rem;
max-width: 1.8rem;
}
.domain {
min-width: 4rem;
max-width: 4rem;
}
.damage {
min-width: 3.2rem;
max-width: 3.2rem;
}
.level {
min-width: 2rem;
max-width: 2rem;
}
.name {
min-width: 10rem;
max-width: 10em;
}
.item-img {
width: 24px;
height: 24px;
margin: 4px 0 0 0;
}
}
}
.weapons {
display: grid;
grid-template-columns: repeat(1, 1fr);
gap: 4px;
.weapon {
display: flex;
align-items: center;
gap: 4px;
min-width: 13rem;
max-width: 13rem;
.rollable:hover,
.rollable:focus {
text-shadow: 0 0 8px var(--color-shadow-primary);
cursor: pointer;
}
.controls {
font-size: 0.7rem;
min-width: 1.8rem;
max-width: 1.8rem;
}
.properties {
min-width: 18rem;
max-width: 18rem;
}
.range {
min-width: 4rem;
max-width: 4rem;
}
.ammo {
min-width: 3rem;
max-width: 3rem;
}
.type {
min-width: 3rem;
max-width: 3rem;
}
.damage {
min-width: 4rem;
max-width: 4rem;
}
.name {
min-width: 10rem;
max-width: 10rem;
}
.item-img {
width: 24px;
height: 24px;
margin: 4px 0 0 0;
}
}
}
}
.tab.enemy-biography .main-div {
/*background-color: var(--color-light-1);*/
display: grid;
grid-template-columns: 1fr;
legend {
a {
font-size: calc(var(--font-size-standard) * 1.4);
padding-left: 5px;
}
}
.splitted-text {
display: flex;
flex-direction: row;
gap: 4px;
fieldset {
width: 100%;
}
}
.deals {
display: grid;
grid-template-columns: repeat(3, 1fr);
gap: 4px;
.deal {
display: flex;
align-items: center;
gap: 4px;
margin-left: 4px;
min-width: 12rem;
max-width: 12rem;
.rollable:hover,
.rollable:focus {
text-shadow: 0 0 8px var(--color-shadow-primary);
cursor: pointer;
}
.controls {
font-size: 0.7rem;
min-width: 1.8rem;
max-width: 1.8rem;
}
.name {
min-width: 10rem;
max-width: 10rem;
}
.item-img {
width: 24px;
height: 24px;
margin: 4px 0 0 0;
}
}
}
.biodata {
display: grid;
grid-template-columns: repeat(3, 1fr);
gap: 4px;
.experience {
display: flex;
flex-direction: row;
align-items: center;
gap: 4px;
margin-left: 4px;
}
.form-group {
label {
min-width: 6rem;
max-width: 6rem;
}
display: flex;
flex-direction: row;
align-items: center;
gap: 4px;
margin-left: 4px;
min-width: 14rem;
max-width: 14rem;
}
input {
text-align: left;
min-width: 8rem;
max-width: 8rem;
}
}
prose-mirror.inactive {
min-height: 40px;
}
prose-mirror.active {
min-height: 150px;
}
}
+7
View File
@@ -0,0 +1,7 @@
.region-sheet-common {
.form-fields {
display: grid;
grid-template-columns: repeat(2, 1fr);
column-gap: 0.5rem;
}
}
+218
View File
@@ -0,0 +1,218 @@
.application.dialog.fvtt-hamalron {
color: var(--color-dark-1);
background-color: var(--color-light-1);
button {
background-image: none;
background-color: var(--color-dark-6);
color: var(--color-light-1);
}
input,
select {
text-align: left;
background-color: rgba(0, 0, 0, 0.1);
border-color: var(--color-dark-6);
color: var(--color-dark-2);
}
}
.fvtt-hamalron-roll-dialog {
fieldset {
padding: 10px;
background-color: var(--color-light-1);
}
}
.dialog-modifier {
display: flex;
justify-content: center;
align-items: center;
select {
border: none;
background-color: rgba(0, 0, 0, 0.1);
color: var(--color-dark-2);
width: 10rem;
text-align: center;
}
}
.red-warning {
color: var(--color-failure);
}
.orange-warning {
color: var(--color-warning);
}
.dialog-damage {
display: flex;
justify-content: center;
align-items: center;
font-family: var(--font-secondary);
font-size: calc(var(--font-size-standard) * 2);
color: var(--color-dark-1);
}
.item-to-chat {
h2 {
margin-top: 10px;
margin-left: 10px;
margin-bottom: 4px;
font-family: var(--font-title);
font-size: calc(var(--font-size-standard) * 1.4);
color: var(--title-color);
}
ul {
list-style-type: none;
padding: 0;
margin: 0;
justify-content: center;
align-items: center;
.tarot-spacing {
margin-top: 0.5rem;
}
li {
margin: 0 10px;
font-family: var(--font-primary);
font-size: calc(var(--font-size-standard) * 1);
p {
margin: 0;
}
}
}
.tarot-item-img {
margin-top: 0.5rem;
}
}
.flavor-text-damage {
font-family: var(--font-secondary);
font-size: calc(var(--font-size-standard) * 1.2);
color: var(--color-dark-2);
margin-top: 0px;
align-items: center;
.chat-damage-type {
font-weight: bold;
display: flex;
justify-content: center;
align-items: center;
margin-bottom: 0.5rem;
}
h2 {
text-align: center;
margin-top: 4px;
margin-left: 4px;
margin-bottom: 0px;
font-family: var(--font-title);
font-size: calc(var(--font-size-standard) * 1.1);
color: var(--title-color);
}
}
&.dice-roll {
flex-direction: column;
.dice-total,
.dice-formula {
padding-top: 5px;
}
.dice-total {
margin-bottom: 5px;
}
.message-header {
font-family: var(--font-primary);
}
img {
border: 0px;
}
.intro-chat {
color: var(--color-dark-1);
border-radius: 20px;
display: flex;
flex-direction: row;
h2 {
margin-top: 10px;
margin-left: 10px;
margin-bottom: 4px;
font-family: var(--font-title);
font-size: calc(var(--font-size-standard) * 1.4);
color: var(--title-color);
}
.intro-img {
padding: 4px;
max-width: 80px;
min-width: 80px;
align-self: top;
text-align: center;
}
.intro-right {
display: flex;
flex-direction: column;
ul {
list-style-type: none;
padding: 0;
margin: 0;
justify-content: center;
align-items: center;
li {
margin: 0 10px;
font-family: var(--font-primary);
font-size: calc(var(--font-size-standard) * 1);
}
.chat-roll-label {
margin-right: 2rem;
}
.chat-results-spacing {
margin-bottom: 0.5rem;
}
.nudge-roll {
font-size: calc(var(--font-size-standard) * 1);
margin-left: 4rem;
display: none;
}
.result-unknown {
color: var(--color-dark-2);
font-family: var(--font-title);
font-size: var(--font-size-result);
}
.result-success {
color: var(--color-success);
font-family: var(--font-title);
font-size: var(--font-size-result);
}
.result-satanic-success {
color: var(--color-critical-success);
font-family: var(--font-title);
font-size: var(--font-size-result);
}
.result-failure {
color: var(--color-failure);
font-family: var(--font-title);
font-size: var(--font-size-result);
}
.result-fiendish-failure {
color: var(--color-critical-failure);
font-family: var(--font-title);
font-size: var(--font-size-result);
}
}
.introText {
font-family: var(--font-secondary);
font-size: calc(var(--font-size-standard) * 1.2);
width: 210px;
margin-left: 20px;
}
}
}
.result {
display: flex;
flex-direction: column;
justify-content: center;
align-items: center;
font-size: calc(var(--font-size-standard) * 1.2);
text-shadow: 0 0 10px var(--color-shadow-primary);
}
}
+37
View File
@@ -0,0 +1,37 @@
.ritual-content {
.sheet-common();
.item-sheet-common();
fieldset {
margin-top: 8px;
.form-group {
display: flex;
align-items: center;
}
.form-group.long-input input {
min-width: 24rem;
max-width: 24rem;
text-align: left;
}
.form-group input {
min-width: 12rem;
max-width: 12rem;
}
.form-group select {
min-width: 12rem;
max-width: 12rem;
}
}
.header {
display: flex;
img {
width: 50px;
height: 50px;
}
}
label {
flex: 10%;
}
}
+218
View File
@@ -0,0 +1,218 @@
.tarot-deck-manager {
.tarot-deck-manager-content {
padding: 1rem;
display: flex;
flex-direction: column;
gap: 1.5rem;
}
.deck-header {
h2 {
margin: 0 0 1rem 0;
font-size: 1.5rem;
color: var(--color-text-dark-primary);
text-align: center;
border-bottom: 2px solid var(--color-border-dark);
padding-bottom: 0.5rem;
}
.deck-stats {
display: grid;
grid-template-columns: repeat(3, 1fr);
gap: 1rem;
margin-top: 1rem;
.stat-item {
display: flex;
flex-direction: column;
align-items: center;
gap: 0.25rem;
padding: 0.75rem;
background: rgba(0, 0, 0, 0.2);
border-radius: 0.25rem;
border: 1px solid var(--color-border-dark);
i {
font-size: 1.5rem;
color: var(--color-text-light-heading);
margin-bottom: 0.25rem;
}
.stat-label {
font-size: 0.75rem;
color: var(--color-text-dark-secondary);
text-transform: uppercase;
}
.stat-value {
font-size: 1.25rem;
font-weight: bold;
color: var(--color-text-light-heading);
}
}
}
}
.deck-actions {
display: flex;
flex-direction: column;
gap: 1rem;
.action-button {
display: flex;
align-items: center;
justify-content: center;
gap: 0.5rem;
padding: 0.75rem 1rem;
font-size: 1rem;
font-weight: bold;
border: none;
border-radius: 0.25rem;
cursor: pointer;
transition: all 0.2s ease;
i {
font-size: 1.25rem;
}
&:disabled {
opacity: 0.5;
cursor: not-allowed;
}
}
.reset-button {
background: var(--color-border-dark);
color: var(--color-text-light-heading);
&:hover:not(:disabled) {
background: var(--color-border-dark-tertiary);
transform: translateY(-2px);
box-shadow: 0 4px 8px rgba(0, 0, 0, 0.3);
}
}
.draw-actions {
display: grid;
grid-template-columns: repeat(3, 1fr);
gap: 0.5rem;
.draw-button {
background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
color: white;
&:hover:not(:disabled) {
background: linear-gradient(135deg, #764ba2 0%, #667eea 100%);
transform: translateY(-2px);
box-shadow: 0 4px 8px rgba(102, 126, 234, 0.4);
}
}
}
}
.recent-draws {
h3 {
margin: 0 0 1rem 0;
font-size: 1.25rem;
color: var(--color-text-dark-primary);
padding-bottom: 0.5rem;
border-bottom: 1px solid var(--color-border-dark);
}
.drawn-cards-list {
display: flex;
flex-direction: column;
gap: 0.75rem;
max-height: 300px;
overflow-y: auto;
.drawn-card {
display: flex;
gap: 1rem;
padding: 0.75rem;
background: rgba(0, 0, 0, 0.2);
border-radius: 0.25rem;
border: 1px solid var(--color-border-dark);
transition: all 0.2s ease;
&:hover {
background: rgba(0, 0, 0, 0.3);
border-color: var(--color-border-dark-tertiary);
}
.card-image {
width: 60px;
height: 60px;
object-fit: cover;
border-radius: 0.25rem;
border: 1px solid var(--color-border-dark);
}
.card-info {
flex: 1;
display: flex;
flex-direction: column;
justify-content: center;
gap: 0.25rem;
.card-name {
margin: 0;
font-size: 1rem;
color: var(--color-text-light-heading);
}
.card-details {
display: flex;
gap: 1rem;
font-size: 0.875rem;
.card-symbole,
.card-valeur {
color: var(--color-text-dark-secondary);
}
}
}
}
}
}
.no-draws {
display: flex;
flex-direction: column;
align-items: center;
justify-content: center;
gap: 1rem;
padding: 3rem 1rem;
color: var(--color-text-dark-secondary);
text-align: center;
i {
opacity: 0.3;
}
p {
margin: 0;
font-style: italic;
}
}
.deck-empty-warning {
display: flex;
align-items: center;
gap: 0.75rem;
padding: 1rem;
background: rgba(255, 165, 0, 0.1);
border: 1px solid rgba(255, 165, 0, 0.3);
border-radius: 0.25rem;
color: #ffa500;
i {
font-size: 1.5rem;
}
p {
margin: 0;
flex: 1;
}
}
}
+52
View File
@@ -0,0 +1,52 @@
.tarot-content {
.sheet-common();
.item-sheet-common();
fieldset {
margin-top: 8px;
legend {
margin-top: 1rem;
}
.form-group {
display: flex;
align-items: center;
}
.form-group.long-input input {
min-width: 24rem;
max-width: 24rem;
text-align: left;
}
.form-group input {
min-width: 12rem;
max-width: 12rem;
}
.form-group select {
min-width: 12rem;
max-width: 12rem;
}
.flexrow,
.scrollable-content {
align-items: flex-start;
}
.tarot-pic {
margin-left: 1rem;
display: flex;
flex-direction: column;
justify-content: flex-start; // aligne le contenu en haut
align-items: center; // ce }
}
}
.header {
display: flex;
img {
width: 60px;
height: 90px;
object-fit: cover;
aspect-ratio: 2/3;
}
}
label {
flex: 10%;
}
}