8 Commits

Author SHA1 Message Date
uberwald 58478d56ea Amélioration du rendu des polices
Release Creation / build (release) Successful in 1m22s
2026-04-27 21:54:04 +02:00
uberwald a99eeaccba Corrections sur font, again v3
Release Creation / build (release) Successful in 1m35s
2026-04-27 17:40:59 +02:00
uberwald 2ab380786f Correction sur O dans police de titre, step2
Release Creation / build (release) Successful in 1m12s
2026-04-27 06:39:11 +02:00
uberwald c3ce628e24 Ameliorations CSS et font diverses
Release Creation / build (release) Successful in 1m25s
2026-04-26 22:44:23 +02:00
uberwald 8e5fb9aca1 Correction sur jauge de destin
Release Creation / build (release) Successful in 1m26s
2026-04-16 22:26:44 +02:00
uberwald 1b2a74969d Update READM.md 2026-04-16 08:39:52 +02:00
uberwald 98a6a41078 Ajout README.md 2026-04-15 11:53:52 +02:00
uberwald c73136b3c9 Ajout README.md 2026-04-15 11:41:44 +02:00
51 changed files with 428 additions and 313 deletions
+84
View File
@@ -0,0 +1,84 @@
# Célestopol 1922 — Système FoundryVTT
Système [Foundry VTT](https://foundryvtt.com) pour **Célestopol 1922**, le jeu de rôle d'[Antre Monde Éditions](https://antremonde.fr).
Copyright 2025-2026 Antre Monde Editions All rights reserved
Celestopol 1922 is a game written by Emmanuel Chastellière and Julien Arnaud. The authors retain their moral rights to this work in both print and digital formats.
This system for FoundryVTT has been approved and authorized by Antre-Monde Edition
---
## ✨ Fonctionnalités
### Personnages joueurs (PJ)
- **4 attributs** (Âme, Corps, Cœur, Esprit) × **4 compétences** chacun (16 compétences au total)
- Gestion des **Blessures** (8 niveaux avec malus automatique aux jets)
- Suivi du **Destin** et du **Spleen** (jauges à 8 crans)
- **Anomalies** : 9 types, déclenchées sur certains résultats de dé
- **Factions** : 8 factions standard + 2 personnalisées, avec aspects liés
- **Équipement** : armes, armures, équipements génériques
- Onglets dédiés : Principal · Compétences · Factions · Équipement · Combat · Biographie
### Personnages non-joueurs (PNJ)
- Fiche simplifiée : compétences, blessures, équipement, biographie
### Items
- **Arme** : mêlée ou à distance, modificateurs de portée
- **Armure** : protection et malus éventuels
- **Aspect de faction** : lié à une faction, bonus / usage limité
- **Anomalie** : type, usages, description
- **Équipement** générique
### Mécanique de jet de désde démonstration
- **Pool de d6** : `max(1, compétence + malus_blessures)` dés
- **Bonus Phase de Lune** : automatique selon la phase en cours (0 à +3)
- **Modificateurs** : difficulté et bonus libres via DialogV2
- Seuil de succès standard : **7**
- Résultats spéciaux : **Brio** (+destin), **Contrecoup** (destin), **Triomphe** (+anomalie/spleen), **Catastrophe** (anomalie/+spleen)
### Dé de la Lune
- Jet de dé de lune indépendant (menu contextuel du token)
- 8 faces : Nouvelle Lune, Premiers Croissants, Dernier Croissant, Gibbeuses ×2, Pleine Lune, Lune de Feu, Lune Noire
- Sur certains résultats : **choix de contrepartie** via pop-up (perte d'anomalie, spleen, ou échec catastrophique)
- Carte de résultat avec boutons d'application directe
### Combat
- **Initiative Célestopol** : jet d'initiative avec dé spécial, insertion dans le tracker
- Attaque avec calcul automatique dommages / protection
- Chat de combat avec récapitulatif des dégâts et blessures appliqués
### Compendiums inclus
| Pack | Contenu |
| ------------ | ------------------------------ |
| Anomalies | Les 8 anomalies du jeu de base |
| Prétirés | 8 personnages prêts à jouer |
| Aides de jeu | Aide du système |
| Scènes | Scènes utiles |
## 🎨 Charte graphique
- Police de titre : **CopaseticNF** (Regular + Bold)
- Vert sombre en-tête : `#0c4c0c`
- Orange texte : `#e07b00`
- Fond parchemin : `#f0e8d4`
- Texture en-tête : `assets/ui/fond_cadrille.jpg`
---
## 👤 Auteur
**LeRatierBretonnien / Uberwald**
- Discord : `LeRatierBretonnien`
- Site : [uberwald.me](https://www.uberwald.me)
---
## 📜 Licence
Copyright 2025 Antre Monde Editions All rights reserved
Celestopol 1922 is a game written by Emmanuel Chastellière and Julien Arnaud. The authors retain their moral rights to this work in both print and digital formats.
This system for FoundryVTT has been approved and authorized by Antre-Monde Edition.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
+19 -1
View File
@@ -58,7 +58,25 @@
"instruction": "Instruction",
"mtechnologique": "Merveilleux technologique",
"raisonnement": "Raisonnement",
"traitement": "Traitement"
"traitement": "Traitement",
"tooltip": {
"artifice": "Art du badinage et de la conversation subtile. Permet de se glisser dans une discussion pour glaner des renseignements ou noyer des informations mensongères. Favorise la manipulation et l'incitation plutôt que la contrainte.",
"attraction": "Capacité à orienter les émotions d'un interlocuteur. Sert à plaire, séduire, mais aussi à passer inaperçu lors d'une soirée mondaine.",
"coercition": "Art d'intimider par le regard ou les mots. Couvre également la capacité à donner des ordres dans un contexte militaire ou hiérarchique.",
"faveur": "Rapport de force oral : convaincre, persuader, négocier. S'appuie sur un discours argumentatif pour imposer son point de vue ou emporter l'adhésion.",
"echauffouree": "Techniques de combat à mains nues, avec une arme improvisée, une arme blanche ou des armes à feu et à distance.",
"effacement": "Capacité à être discret et à ne pas se faire repérer. Couvre le camouflage et l'escamotage. Requiert souvent de demeurer immobile.",
"mobilite": "Réflexes et vivacité. Sert pour la conduite, le pilotage, l'équitation, et représente l'initiative d'un protagoniste.",
"prouesse": "Efforts sportifs et physiques : escalade, natation, sprint, force brute et endurance.",
"appreciation": "Observer son environnement de façon exhaustive. Permet de repérer des intrus, des pièges, des guets-apens et des indices.",
"arts": "Domaines artistiques au sens large : musique, littérature, théâtre, prestidigitation. Permet de captiver un auditoire ou de créer des œuvres.",
"inspiration": "Intuition et inconscient : écouter sa petite voix intérieure sans démarche logique préalable. Permet aussi de lire le comportement d'une personne.",
"traque": "Filer un individu ou un groupe, pister et s'orienter. Ouvre également vers les techniques de survie.",
"instruction": "Savoirs encyclopédiques : sciences humaines, sciences dures, sciences sociales et linguistique. Chaque tranche de 2 points permet de maîtriser une langue supplémentaire.",
"mtechnologique": "Technologies extraordinaires de Célestopol : mécanique, automates, ingénierie au sélénium, horlogerie, serrurerie et artisanat.",
"raisonnement": "Capacités cognitives : déduction froide, logique pragmatique, analyse des faits. Utile pour percevoir des liens dans une enquête.",
"traitement": "Techniques médicales et thérapeutiques : premiers secours, chirurgie, pharmacopée, psychanalyse et psychothérapie."
}
},
"Anomaly": {
"type": "Type d'anomalie",
+16 -16
View File
@@ -31,28 +31,28 @@ export const STATS = {
/** Domaines groupées par attribut. */
export const SKILLS = {
ame: {
artifice: { id: "artifice", label: "CELESTOPOL.Skill.artifice", stat: "ame", resThreshold: 5 },
attraction: { id: "attraction", label: "CELESTOPOL.Skill.attraction", stat: "ame", resThreshold: 2 },
coercition: { id: "coercition", label: "CELESTOPOL.Skill.coercition", stat: "ame", resThreshold: 3 },
faveur: { id: "faveur", label: "CELESTOPOL.Skill.faveur", stat: "ame", resThreshold: 6 },
artifice: { id: "artifice", label: "CELESTOPOL.Skill.artifice", tooltip: "CELESTOPOL.Skill.tooltip.artifice", stat: "ame", resThreshold: 5 },
attraction: { id: "attraction", label: "CELESTOPOL.Skill.attraction", tooltip: "CELESTOPOL.Skill.tooltip.attraction", stat: "ame", resThreshold: 2 },
coercition: { id: "coercition", label: "CELESTOPOL.Skill.coercition", tooltip: "CELESTOPOL.Skill.tooltip.coercition", stat: "ame", resThreshold: 3 },
faveur: { id: "faveur", label: "CELESTOPOL.Skill.faveur", tooltip: "CELESTOPOL.Skill.tooltip.faveur", stat: "ame", resThreshold: 6 },
},
corps: {
echauffouree: { id: "echauffouree", label: "CELESTOPOL.Skill.echauffouree", stat: "corps", resThreshold: 6 },
effacement: { id: "effacement", label: "CELESTOPOL.Skill.effacement", stat: "corps", resThreshold: 3 },
mobilite: { id: "mobilite", label: "CELESTOPOL.Skill.mobilite", stat: "corps", resThreshold: 2 },
prouesse: { id: "prouesse", label: "CELESTOPOL.Skill.prouesse", stat: "corps", resThreshold: 5 },
echauffouree: { id: "echauffouree", label: "CELESTOPOL.Skill.echauffouree", tooltip: "CELESTOPOL.Skill.tooltip.echauffouree", stat: "corps", resThreshold: 6 },
effacement: { id: "effacement", label: "CELESTOPOL.Skill.effacement", tooltip: "CELESTOPOL.Skill.tooltip.effacement", stat: "corps", resThreshold: 3 },
mobilite: { id: "mobilite", label: "CELESTOPOL.Skill.mobilite", tooltip: "CELESTOPOL.Skill.tooltip.mobilite", stat: "corps", resThreshold: 2 },
prouesse: { id: "prouesse", label: "CELESTOPOL.Skill.prouesse", tooltip: "CELESTOPOL.Skill.tooltip.prouesse", stat: "corps", resThreshold: 5 },
},
coeur: {
appreciation: { id: "appreciation", label: "CELESTOPOL.Skill.appreciation", stat: "coeur", resThreshold: 6 },
arts: { id: "arts", label: "CELESTOPOL.Skill.arts", stat: "coeur", resThreshold: 2 },
inspiration: { id: "inspiration", label: "CELESTOPOL.Skill.inspiration", stat: "coeur", resThreshold: 3 },
traque: { id: "traque", label: "CELESTOPOL.Skill.traque", stat: "coeur", resThreshold: 5 },
appreciation: { id: "appreciation", label: "CELESTOPOL.Skill.appreciation", tooltip: "CELESTOPOL.Skill.tooltip.appreciation", stat: "coeur", resThreshold: 6 },
arts: { id: "arts", label: "CELESTOPOL.Skill.arts", tooltip: "CELESTOPOL.Skill.tooltip.arts", stat: "coeur", resThreshold: 2 },
inspiration: { id: "inspiration", label: "CELESTOPOL.Skill.inspiration", tooltip: "CELESTOPOL.Skill.tooltip.inspiration", stat: "coeur", resThreshold: 3 },
traque: { id: "traque", label: "CELESTOPOL.Skill.traque", tooltip: "CELESTOPOL.Skill.tooltip.traque", stat: "coeur", resThreshold: 5 },
},
esprit: {
instruction: { id: "instruction", label: "CELESTOPOL.Skill.instruction", stat: "esprit", resThreshold: 2 },
mtechnologique: { id: "mtechnologique", label: "CELESTOPOL.Skill.mtechnologique", stat: "esprit", resThreshold: 6 },
raisonnement: { id: "raisonnement", label: "CELESTOPOL.Skill.raisonnement", stat: "esprit", resThreshold: 5 },
traitement: { id: "traitement", label: "CELESTOPOL.Skill.traitement", stat: "esprit", resThreshold: 3 },
instruction: { id: "instruction", label: "CELESTOPOL.Skill.instruction", tooltip: "CELESTOPOL.Skill.tooltip.instruction", stat: "esprit", resThreshold: 2 },
mtechnologique: { id: "mtechnologique", label: "CELESTOPOL.Skill.mtechnologique", tooltip: "CELESTOPOL.Skill.tooltip.mtechnologique", stat: "esprit", resThreshold: 6 },
raisonnement: { id: "raisonnement", label: "CELESTOPOL.Skill.raisonnement", tooltip: "CELESTOPOL.Skill.tooltip.raisonnement", stat: "esprit", resThreshold: 5 },
traitement: { id: "traitement", label: "CELESTOPOL.Skill.traitement", tooltip: "CELESTOPOL.Skill.tooltip.traitement", stat: "esprit", resThreshold: 3 },
},
}
+5 -5
View File
@@ -231,7 +231,7 @@ export default class CelestopolCharacter extends foundry.abstract.TypeDataModel
woundLevel: this.blessures.lvl,
difficulty: this.prefs.difficulty,
rollMoonDie: this.prefs.rollMoonDie ?? false,
destGaugeFull: this.destin.lvl > 0,
destGaugeFull: this.destin.lvl >= 8,
fortuneValue: this.attributs.fortune.value,
})
}
@@ -343,7 +343,7 @@ export default class CelestopolCharacter extends foundry.abstract.TypeDataModel
armorMalus: this.getArmorMalusForRoll("corps", "echauffouree"),
woundLevel: this.blessures.lvl,
rollMoonDie: this.prefs.rollMoonDie ?? false,
destGaugeFull: this.destin.lvl > 0,
destGaugeFull: this.destin.lvl >= 8,
fortuneValue: this.attributs.fortune.value,
isCombat: true,
isRangedDefense: false,
@@ -376,7 +376,7 @@ export default class CelestopolCharacter extends foundry.abstract.TypeDataModel
armorMalus: this.getArmorMalusForRoll("corps", "echauffouree"),
woundLevel: this.blessures.lvl,
rollMoonDie: this.prefs.rollMoonDie ?? false,
destGaugeFull: this.destin.lvl > 0,
destGaugeFull: this.destin.lvl >= 8,
fortuneValue: this.attributs.fortune.value,
isCombat: true,
isRangedDefense: false,
@@ -415,7 +415,7 @@ export default class CelestopolCharacter extends foundry.abstract.TypeDataModel
armorMalus: this.getArmorMalusForRoll("corps", "mobilite"),
woundLevel: this.blessures.lvl,
rollMoonDie: this.prefs.rollMoonDie ?? false,
destGaugeFull: this.destin.lvl > 0,
destGaugeFull: this.destin.lvl >= 8,
fortuneValue: this.attributs.fortune.value,
isCombat: true,
isRangedDefense: true,
@@ -449,7 +449,7 @@ export default class CelestopolCharacter extends foundry.abstract.TypeDataModel
armorMalus: this.getArmorMalusForRoll("corps", "mobilite"),
woundLevel: this.blessures.lvl,
rollMoonDie: this.prefs.rollMoonDie ?? false,
destGaugeFull: this.destin.lvl > 0,
destGaugeFull: this.destin.lvl >= 8,
fortuneValue: this.attributs.fortune.value,
isCombat: true,
isRangedDefense: true,
+1 -1
View File
@@ -1 +1 @@
MANIFEST-000076
MANIFEST-000089
+7 -8
View File
@@ -1,8 +1,7 @@
2026/04/14-21:45:17.258246 7fc1d9fbd6c0 Recovering log #75
2026/04/14-21:45:17.274015 7fc1d9fbd6c0 Delete type=0 #75
2026/04/14-21:45:17.274077 7fc1d9fbd6c0 Delete type=3 #74
2026/04/15-02:16:16.676658 7fc1d8fbb6c0 Level-0 table #79: started
2026/04/15-02:16:16.676686 7fc1d8fbb6c0 Level-0 table #79: 0 bytes OK
2026/04/15-02:16:16.720642 7fc1d8fbb6c0 Delete type=0 #77
2026/04/15-02:16:16.819908 7fc1d8fbb6c0 Manual compaction at level-0 from '!journal!eNYstmPK0mMmVJYC' @ 72057594037927935 : 1 .. '!journal.pages!eNYstmPK0mMmVJYC.r9h1ggd3G9hiqYJX' @ 0 : 0; will stop at (end)
2026/04/15-02:16:16.881523 7fc1d8fbb6c0 Manual compaction at level-1 from '!journal!eNYstmPK0mMmVJYC' @ 72057594037927935 : 1 .. '!journal.pages!eNYstmPK0mMmVJYC.r9h1ggd3G9hiqYJX' @ 0 : 0; will stop at (end)
2026/04/27-17:34:57.971923 7f57a57ee6c0 Recovering log #86
2026/04/27-17:34:57.982802 7f57a57ee6c0 Delete type=3 #84
2026/04/27-17:34:57.982897 7f57a57ee6c0 Delete type=0 #86
2026/04/27-17:40:33.923146 7f57977fe6c0 Level-0 table #92: started
2026/04/27-17:40:33.923179 7f57977fe6c0 Level-0 table #92: 0 bytes OK
2026/04/27-17:40:33.960133 7f57977fe6c0 Delete type=0 #90
2026/04/27-17:40:34.016282 7f57977fe6c0 Manual compaction at level-0 from '!journal!eNYstmPK0mMmVJYC' @ 72057594037927935 : 1 .. '!journal.pages!eNYstmPK0mMmVJYC.r9h1ggd3G9hiqYJX' @ 0 : 0; will stop at (end)
+11 -3
View File
@@ -1,3 +1,11 @@
2026/04/14-10:43:54.304360 7fddcbfff6c0 Recovering log #72
2026/04/14-10:43:54.314599 7fddcbfff6c0 Delete type=3 #70
2026/04/14-10:43:54.314647 7fddcbfff6c0 Delete type=0 #72
2026/04/26-21:30:37.725370 7f57a5fef6c0 Delete type=3 #1
2026/04/26-22:44:03.500717 7f57977fe6c0 Level-0 table #87: started
2026/04/26-22:44:03.500753 7f57977fe6c0 Level-0 table #87: 0 bytes OK
2026/04/26-22:44:03.506825 7f57977fe6c0 Delete type=0 #85
2026/04/26-22:44:03.534971 7f57977fe6c0 Manual compaction at level-0 from '!journal!eNYstmPK0mMmVJYC' @ 72057594037927935 : 1 .. '!journal.pages!eNYstmPK0mMmVJYC.r9h1ggd3G9hiqYJX' @ 0 : 0; will stop at '!journal.pages!eNYstmPK0mMmVJYC.r9h1ggd3G9hiqYJX' @ 1 : 1
2026/04/26-22:44:03.534983 7f57977fe6c0 Compacting 1@0 + 0@1 files
2026/04/26-22:44:03.538403 7f57977fe6c0 Generated table #88@0: 6 keys, 5441 bytes
2026/04/26-22:44:03.538450 7f57977fe6c0 Compacted 1@0 + 0@1 files => 5441 bytes
2026/04/26-22:44:03.544821 7f57977fe6c0 compacted to: files[ 0 1 0 0 0 0 0 ]
2026/04/26-22:44:03.545059 7f57977fe6c0 Delete type=2 #5
2026/04/26-22:44:03.555755 7f57977fe6c0 Manual compaction at level-0 from '!journal.pages!eNYstmPK0mMmVJYC.r9h1ggd3G9hiqYJX' @ 1 : 1 .. '!journal.pages!eNYstmPK0mMmVJYC.r9h1ggd3G9hiqYJX' @ 0 : 0; will stop at (end)
Binary file not shown.
Binary file not shown.
+1 -1
View File
@@ -1 +1 @@
MANIFEST-000129
MANIFEST-000147
+14 -24
View File
@@ -1,24 +1,14 @@
2026/04/14-21:45:17.210322 7fc1dafbf6c0 Recovering log #128
2026/04/14-21:45:17.212264 7fc1dafbf6c0 Level-0 table #130: started
2026/04/14-21:45:17.217282 7fc1dafbf6c0 Level-0 table #130: 3524 bytes OK
2026/04/14-21:45:17.232642 7fc1dafbf6c0 Delete type=0 #128
2026/04/14-21:45:17.232776 7fc1dafbf6c0 Delete type=3 #127
2026/04/15-02:16:16.615618 7fc1d8fbb6c0 Level-0 table #133: started
2026/04/15-02:16:16.640160 7fc1d8fbb6c0 Level-0 table #133: 3524 bytes OK
2026/04/15-02:16:16.676484 7fc1d8fbb6c0 Delete type=0 #131
2026/04/15-02:16:16.763469 7fc1d8fbb6c0 Manual compaction at level-0 from '!items!anomCommMorts001' @ 72057594037927935 : 1 .. '!items!null' @ 0 : 0; will stop at '!items!null' @ 109 : 1
2026/04/15-02:16:16.763478 7fc1d8fbb6c0 Compacting 2@0 + 0@1 files
2026/04/15-02:16:16.781648 7fc1d8fbb6c0 Generated table #134@0: 1 keys, 1363 bytes
2026/04/15-02:16:16.781712 7fc1d8fbb6c0 Compacted 2@0 + 0@1 files => 1363 bytes
2026/04/15-02:16:16.819583 7fc1d8fbb6c0 compacted to: files[ 0 1 1 0 0 0 0 ]
2026/04/15-02:16:16.819716 7fc1d8fbb6c0 Delete type=2 #130
2026/04/15-02:16:16.819841 7fc1d8fbb6c0 Delete type=2 #133
2026/04/15-02:16:16.881505 7fc1d8fbb6c0 Manual compaction at level-0 from '!items!null' @ 109 : 1 .. '!items!null' @ 0 : 0; will stop at (end)
2026/04/15-02:16:16.881561 7fc1d8fbb6c0 Manual compaction at level-1 from '!items!anomCommMorts001' @ 72057594037927935 : 1 .. '!items!null' @ 0 : 0; will stop at '!items!null' @ 116 : 1
2026/04/15-02:16:16.881568 7fc1d8fbb6c0 Compacting 1@1 + 1@2 files
2026/04/15-02:16:16.899721 7fc1d8fbb6c0 Generated table #135@1: 9 keys, 6617 bytes
2026/04/15-02:16:16.899762 7fc1d8fbb6c0 Compacted 1@1 + 1@2 files => 6617 bytes
2026/04/15-02:16:16.937990 7fc1d8fbb6c0 compacted to: files[ 0 0 1 0 0 0 0 ]
2026/04/15-02:16:16.938116 7fc1d8fbb6c0 Delete type=2 #126
2026/04/15-02:16:16.938278 7fc1d8fbb6c0 Delete type=2 #134
2026/04/15-02:16:17.092334 7fc1d8fbb6c0 Manual compaction at level-1 from '!items!null' @ 116 : 1 .. '!items!null' @ 0 : 0; will stop at (end)
2026/04/27-17:34:57.942157 7f5797fff6c0 Recovering log #144
2026/04/27-17:34:57.953303 7f5797fff6c0 Delete type=3 #142
2026/04/27-17:34:57.953395 7f5797fff6c0 Delete type=0 #144
2026/04/27-17:40:33.795334 7f57977fe6c0 Level-0 table #150: started
2026/04/27-17:40:33.811935 7f57977fe6c0 Level-0 table #150: 3524 bytes OK
2026/04/27-17:40:33.849036 7f57977fe6c0 Delete type=0 #148
2026/04/27-17:40:33.960338 7f57977fe6c0 Manual compaction at level-0 from '!items!anomCommMorts001' @ 72057594037927935 : 1 .. '!items!null' @ 0 : 0; will stop at '!items!null' @ 125 : 1
2026/04/27-17:40:33.960357 7f57977fe6c0 Compacting 1@0 + 1@1 files
2026/04/27-17:40:33.978560 7f57977fe6c0 Generated table #151@0: 9 keys, 6617 bytes
2026/04/27-17:40:33.978605 7f57977fe6c0 Compacted 1@0 + 1@1 files => 6617 bytes
2026/04/27-17:40:34.015833 7f57977fe6c0 compacted to: files[ 0 1 0 0 0 0 0 ]
2026/04/27-17:40:34.015983 7f57977fe6c0 Delete type=2 #146
2026/04/27-17:40:34.016171 7f57977fe6c0 Delete type=2 #150
2026/04/27-17:40:34.016294 7f57977fe6c0 Manual compaction at level-0 from '!items!null' @ 125 : 1 .. '!items!null' @ 0 : 0; will stop at (end)
+12 -3
View File
@@ -1,3 +1,12 @@
2026/04/14-10:43:54.279048 7fddd97be6c0 Recovering log #124
2026/04/14-10:43:54.288686 7fddd97be6c0 Delete type=3 #122
2026/04/14-10:43:54.288755 7fddd97be6c0 Delete type=0 #124
2026/04/26-21:30:37.676414 7f57a4fed6c0 Delete type=3 #1
2026/04/26-22:44:03.490255 7f57977fe6c0 Level-0 table #145: started
2026/04/26-22:44:03.493705 7f57977fe6c0 Level-0 table #145: 3524 bytes OK
2026/04/26-22:44:03.500560 7f57977fe6c0 Delete type=0 #143
2026/04/26-22:44:03.524721 7f57977fe6c0 Manual compaction at level-0 from '!items!anomCommMorts001' @ 72057594037927935 : 1 .. '!items!null' @ 0 : 0; will stop at '!items!null' @ 121 : 1
2026/04/26-22:44:03.524743 7f57977fe6c0 Compacting 2@0 + 0@1 files
2026/04/26-22:44:03.528390 7f57977fe6c0 Generated table #146@0: 9 keys, 6617 bytes
2026/04/26-22:44:03.528448 7f57977fe6c0 Compacted 2@0 + 0@1 files => 6617 bytes
2026/04/26-22:44:03.534535 7f57977fe6c0 compacted to: files[ 0 1 0 0 0 0 0 ]
2026/04/26-22:44:03.534696 7f57977fe6c0 Delete type=2 #140
2026/04/26-22:44:03.534864 7f57977fe6c0 Delete type=2 #145
2026/04/26-22:44:03.555737 7f57977fe6c0 Manual compaction at level-0 from '!items!null' @ 121 : 1 .. '!items!null' @ 0 : 0; will stop at (end)
Binary file not shown.
Binary file not shown.
View File
+1 -1
View File
@@ -1 +1 @@
MANIFEST-000037
MANIFEST-000050
+7 -8
View File
@@ -1,8 +1,7 @@
2026/04/14-21:45:17.237698 7fc1da7be6c0 Recovering log #36
2026/04/14-21:45:17.253057 7fc1da7be6c0 Delete type=0 #36
2026/04/14-21:45:17.253185 7fc1da7be6c0 Delete type=3 #35
2026/04/15-02:16:16.720764 7fc1d8fbb6c0 Level-0 table #40: started
2026/04/15-02:16:16.720792 7fc1d8fbb6c0 Level-0 table #40: 0 bytes OK
2026/04/15-02:16:16.763312 7fc1d8fbb6c0 Delete type=0 #38
2026/04/15-02:16:16.819920 7fc1d8fbb6c0 Manual compaction at level-0 from '!actors!6RZ6IzJUHm4dB5Ut' @ 72057594037927935 : 1 .. '!folders!MbFQgPdF6Gtbj5AU' @ 0 : 0; will stop at (end)
2026/04/15-02:16:16.881536 7fc1d8fbb6c0 Manual compaction at level-1 from '!actors!6RZ6IzJUHm4dB5Ut' @ 72057594037927935 : 1 .. '!folders!MbFQgPdF6Gtbj5AU' @ 0 : 0; will stop at (end)
2026/04/27-17:34:57.956196 7f57a57ee6c0 Recovering log #47
2026/04/27-17:34:57.967031 7f57a57ee6c0 Delete type=3 #45
2026/04/27-17:34:57.967119 7f57a57ee6c0 Delete type=0 #47
2026/04/27-17:40:33.886478 7f57977fe6c0 Level-0 table #53: started
2026/04/27-17:40:33.886512 7f57977fe6c0 Level-0 table #53: 0 bytes OK
2026/04/27-17:40:33.922981 7f57977fe6c0 Delete type=0 #51
2026/04/27-17:40:34.016271 7f57977fe6c0 Manual compaction at level-0 from '!actors!6RZ6IzJUHm4dB5Ut' @ 72057594037927935 : 1 .. '!folders!MbFQgPdF6Gtbj5AU' @ 0 : 0; will stop at (end)
+11 -3
View File
@@ -1,3 +1,11 @@
2026/04/14-10:43:54.291004 7fddd8fbd6c0 Recovering log #33
2026/04/14-10:43:54.301929 7fddd8fbd6c0 Delete type=3 #31
2026/04/14-10:43:54.301981 7fddd8fbd6c0 Delete type=0 #33
2026/04/26-21:30:37.703085 7f57a4fed6c0 Delete type=3 #1
2026/04/26-22:44:03.483917 7f57977fe6c0 Level-0 table #48: started
2026/04/26-22:44:03.483998 7f57977fe6c0 Level-0 table #48: 0 bytes OK
2026/04/26-22:44:03.490106 7f57977fe6c0 Delete type=0 #46
2026/04/26-22:44:03.513451 7f57977fe6c0 Manual compaction at level-0 from '!actors!6RZ6IzJUHm4dB5Ut' @ 72057594037927935 : 1 .. '!folders!MbFQgPdF6Gtbj5AU' @ 0 : 0; will stop at '!folders!MbFQgPdF6Gtbj5AU' @ 37 : 1
2026/04/26-22:44:03.513463 7f57977fe6c0 Compacting 1@0 + 0@1 files
2026/04/26-22:44:03.517217 7f57977fe6c0 Generated table #49@0: 36 keys, 35733 bytes
2026/04/26-22:44:03.517247 7f57977fe6c0 Compacted 1@0 + 0@1 files => 35733 bytes
2026/04/26-22:44:03.523835 7f57977fe6c0 compacted to: files[ 0 1 0 0 0 0 0 ]
2026/04/26-22:44:03.523973 7f57977fe6c0 Delete type=2 #18
2026/04/26-22:44:03.555713 7f57977fe6c0 Manual compaction at level-0 from '!folders!MbFQgPdF6Gtbj5AU' @ 37 : 1 .. '!folders!MbFQgPdF6Gtbj5AU' @ 0 : 0; will stop at (end)
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
View File
+1 -1
View File
@@ -1 +1 @@
MANIFEST-000076
MANIFEST-000092
+7 -15
View File
@@ -1,15 +1,7 @@
2026/04/14-21:45:17.278141 7fc1d97bc6c0 Recovering log #75
2026/04/14-21:45:17.294441 7fc1d97bc6c0 Delete type=0 #75
2026/04/14-21:45:17.294490 7fc1d97bc6c0 Delete type=3 #74
2026/04/15-02:16:16.819929 7fc1d8fbb6c0 Level-0 table #79: started
2026/04/15-02:16:16.847375 7fc1d8fbb6c0 Level-0 table #79: 3342 bytes OK
2026/04/15-02:16:16.881351 7fc1d8fbb6c0 Delete type=0 #77
2026/04/15-02:16:16.881546 7fc1d8fbb6c0 Manual compaction at level-0 from '!scenes!0iGCRqkdJKjmmbl4' @ 72057594037927935 : 1 .. '!scenes.levels!Jr7lGxYk2RETlXRv.defaultLevel0000' @ 0 : 0; will stop at (end)
2026/04/15-02:16:16.938347 7fc1d8fbb6c0 Manual compaction at level-1 from '!scenes!0iGCRqkdJKjmmbl4' @ 72057594037927935 : 1 .. '!scenes.levels!Jr7lGxYk2RETlXRv.defaultLevel0000' @ 0 : 0; will stop at '!scenes.tokens.delta.items!Jr7lGxYk2RETlXRv.6urwC5SVcou6UOAG.CTg4yBE12iMee1RU.BYT1CrA37R3Og0nu' @ 49 : 0
2026/04/15-02:16:16.938354 7fc1d8fbb6c0 Compacting 1@1 + 1@2 files
2026/04/15-02:16:16.955205 7fc1d8fbb6c0 Generated table #80@1: 3 keys, 1810 bytes
2026/04/15-02:16:16.955236 7fc1d8fbb6c0 Compacted 1@1 + 1@2 files => 1810 bytes
2026/04/15-02:16:16.986128 7fc1d8fbb6c0 compacted to: files[ 0 0 1 0 0 0 0 ]
2026/04/15-02:16:16.986229 7fc1d8fbb6c0 Delete type=2 #57
2026/04/15-02:16:16.986351 7fc1d8fbb6c0 Delete type=2 #79
2026/04/15-02:16:17.092360 7fc1d8fbb6c0 Manual compaction at level-1 from '!scenes.tokens.delta.items!Jr7lGxYk2RETlXRv.6urwC5SVcou6UOAG.CTg4yBE12iMee1RU.BYT1CrA37R3Og0nu' @ 49 : 0 .. '!scenes.levels!Jr7lGxYk2RETlXRv.defaultLevel0000' @ 0 : 0; will stop at (end)
2026/04/27-17:34:57.986104 7f5797fff6c0 Recovering log #89
2026/04/27-17:34:57.996510 7f5797fff6c0 Delete type=3 #87
2026/04/27-17:34:57.996596 7f5797fff6c0 Delete type=0 #89
2026/04/27-17:40:33.849202 7f57977fe6c0 Level-0 table #95: started
2026/04/27-17:40:33.849252 7f57977fe6c0 Level-0 table #95: 0 bytes OK
2026/04/27-17:40:33.886306 7f57977fe6c0 Delete type=0 #93
2026/04/27-17:40:34.016257 7f57977fe6c0 Manual compaction at level-0 from '!scenes!0iGCRqkdJKjmmbl4' @ 72057594037927935 : 1 .. '!scenes.levels!X3XJg7raEXtOFOtj.defaultLevel0000' @ 0 : 0; will stop at (end)
+11 -3
View File
@@ -1,3 +1,11 @@
2026/04/14-10:43:54.317254 7fddd9fbf6c0 Recovering log #72
2026/04/14-10:43:54.326872 7fddd9fbf6c0 Delete type=3 #70
2026/04/14-10:43:54.326932 7fddd9fbf6c0 Delete type=0 #72
2026/04/26-21:30:37.754039 7f5797fff6c0 Delete type=3 #1
2026/04/26-22:44:03.507044 7f57977fe6c0 Level-0 table #90: started
2026/04/26-22:44:03.507095 7f57977fe6c0 Level-0 table #90: 0 bytes OK
2026/04/26-22:44:03.513200 7f57977fe6c0 Delete type=0 #88
2026/04/26-22:44:03.545324 7f57977fe6c0 Manual compaction at level-0 from '!scenes!0iGCRqkdJKjmmbl4' @ 72057594037927935 : 1 .. '!scenes.levels!X3XJg7raEXtOFOtj.defaultLevel0000' @ 0 : 0; will stop at '!scenes.levels!X3XJg7raEXtOFOtj.defaultLevel0000' @ 61 : 1
2026/04/26-22:44:03.545342 7f57977fe6c0 Compacting 1@0 + 0@1 files
2026/04/26-22:44:03.549127 7f57977fe6c0 Generated table #91@0: 4 keys, 1746 bytes
2026/04/26-22:44:03.549142 7f57977fe6c0 Compacted 1@0 + 0@1 files => 1746 bytes
2026/04/26-22:44:03.555374 7f57977fe6c0 compacted to: files[ 0 1 0 0 0 0 0 ]
2026/04/26-22:44:03.555539 7f57977fe6c0 Delete type=2 #85
2026/04/26-22:44:03.555771 7f57977fe6c0 Manual compaction at level-0 from '!scenes.levels!X3XJg7raEXtOFOtj.defaultLevel0000' @ 61 : 1 .. '!scenes.levels!X3XJg7raEXtOFOtj.defaultLevel0000' @ 0 : 0; will stop at (end)
Binary file not shown.
Binary file not shown.
View File
+44 -44
View File
@@ -24,7 +24,7 @@
min-width: 54px;
label {
font-size: 0.58em;
font-size: 0.6em;
text-transform: uppercase;
letter-spacing: 0.04em;
color: var(--cel-orange-light);
@@ -34,12 +34,12 @@
.stat-value, .attr-display {
color: var(--cel-orange);
font-family: var(--cel-font-title);
font-size: 1.05em;
font-size: 1.2em;
font-weight: bold;
line-height: 1.2;
}
.attr-sep { color: rgba(196,154,26,0.5); margin: 0 1px; font-size: 0.85em; }
.attr-sep { color: rgba(196,154,26,0.5); margin: 0 1px; font-size: 0.8em; }
input.attr-val, input.attr-max {
width: 24px;
@@ -49,7 +49,7 @@
border-bottom: 1px solid var(--cel-orange-light);
color: var(--cel-orange);
font-family: var(--cel-font-title);
font-size: 1em;
font-size: 1.1em;
font-weight: bold;
}
}
@@ -60,7 +60,7 @@
.armor-malus-value {
color: #e06040;
font-family: var(--cel-font-title);
font-size: 1.05em;
font-size: 1.2em;
font-weight: bold;
}
label { color: #e06040; opacity: 0.8; }
@@ -92,7 +92,7 @@
.stat-name {
font-family: var(--cel-font-title);
font-weight: bold;
font-size: 1em;
font-size: 1.1em;
text-transform: uppercase;
letter-spacing: 0.05em;
}
@@ -121,7 +121,7 @@
border: 1px solid var(--cel-orange);
border-radius: 4px;
background: rgba(224, 123, 0, 0.08);
font-size: 0.78em;
font-size: 0.8em;
cursor: default;
.res-die-icon {
@@ -164,7 +164,7 @@
justify-content: space-between;
padding: 3px 8px;
border-bottom: 1px solid rgba(122,92,32,0.18);
font-size: 0.85em;
font-size: 0.8em;
// Alternating cream-dark rows for legibility
&:nth-child(even) { background: var(--cel-cream-dark); }
@@ -279,7 +279,7 @@
font-family: var(--cel-font-title);
font-weight: bold;
text-transform: uppercase;
font-size: 1.1em;
font-size: 1.2em;
letter-spacing: 0.04em;
display: flex;
align-items: center;
@@ -293,7 +293,7 @@
height: 14px;
border-radius: 50%;
border: 1px solid currentColor;
font-size: 0.65em;
font-size: 0.7em;
font-family: var(--cel-font-body);
font-weight: bold;
text-transform: none;
@@ -349,7 +349,7 @@
gap: 6px;
padding: 4px 8px;
background: rgba(139,115,85,0.1);
font-size: 0.85em;
font-size: 0.8em;
label { color: var(--cel-border); }
input[type="number"] { width: 40px; .cel-input-std(); }
}
@@ -380,7 +380,7 @@
.faction-aspect-summary-title {
color: var(--cel-green);
font-family: var(--cel-font-title);
font-size: 1em;
font-size: 1.1em;
letter-spacing: 0.04em;
text-transform: uppercase;
line-height: 1.05;
@@ -393,7 +393,7 @@
color: var(--cel-orange);
cursor: pointer;
text-decoration: none;
font-size: 0.84em;
font-size: 0.8em;
white-space: nowrap;
}
@@ -413,7 +413,7 @@
.label {
display: block;
font-size: 0.66em;
font-size: 0.7em;
text-transform: uppercase;
letter-spacing: 0.03em;
color: var(--cel-border);
@@ -423,7 +423,7 @@
.value {
color: var(--cel-orange);
font-family: var(--cel-font-title);
font-size: 1.02em;
font-size: 1.1em;
line-height: 1;
}
}
@@ -448,7 +448,7 @@
.faction-aspect-active-title {
margin-bottom: 4px;
color: var(--cel-border);
font-size: 0.68em;
font-size: 0.7em;
text-transform: uppercase;
letter-spacing: 0.04em;
line-height: 1.1;
@@ -477,20 +477,20 @@
.name {
color: var(--cel-green);
font-size: 0.88em;
font-size: 0.9em;
}
.value {
color: var(--cel-orange);
font-family: var(--cel-font-title);
font-size: 0.9em;
font-size: 1em;
}
}
.faction-aspect-empty {
color: #666;
font-style: italic;
font-size: 0.84em;
font-size: 0.8em;
}
}
@@ -505,7 +505,7 @@
background-image: url("../assets/ui/fond_cadrille.jpg");
background-blend-mode: soft-light;
color: var(--cel-orange);
th { padding: 5px 8px; font-family: var(--cel-font-title); font-size: 1.05em; letter-spacing: 0.06em; text-transform: uppercase; }
th { padding: 5px 8px; font-family: var(--cel-font-title); font-size: 1.2em; letter-spacing: 0.06em; text-transform: uppercase; }
}
.faction-row {
@@ -542,7 +542,7 @@
}
.faction-count {
font-size: 0.85em;
font-size: 0.8em;
font-weight: bold;
color: var(--cel-orange);
min-width: 16px;
@@ -569,7 +569,7 @@
border-bottom: 1px solid rgba(122,92,32,0.25);
color: var(--cel-green);
font-family: var(--cel-font-title);
font-size: 1.05em;
font-size: 1.2em;
letter-spacing: 0.05em;
text-transform: uppercase;
}
@@ -578,7 +578,7 @@
display: flex;
flex-direction: column;
gap: 4px;
font-size: 0.88em;
font-size: 0.9em;
}
.factions-legend-row {
@@ -634,7 +634,7 @@
}
.item-tag {
font-size: 0.75em;
font-size: 0.8em;
padding: 1px 7px;
border-radius: 10px;
background: rgba(12,76,12,0.15);
@@ -661,7 +661,7 @@
justify-content: center;
min-width: 20px;
min-height: 20px;
font-size: 1.08rem;
font-size: 1.1rem;
line-height: 1;
}
}
@@ -684,7 +684,7 @@
}
.equip-empty {
font-size: 0.85em;
font-size: 0.8em;
font-style: italic;
color: var(--cel-border);
padding: 4px 8px;
@@ -736,7 +736,7 @@
.biography-portrait-empty {
padding: 14px;
color: var(--cel-border);
font-size: 0.82em;
font-size: 0.8em;
font-style: italic;
text-align: center;
line-height: 1.5;
@@ -769,7 +769,7 @@
border-radius: 4px;
background: linear-gradient(180deg, rgba(255,255,255,0.82), rgba(233,223,201,0.95));
color: var(--cel-green);
font-size: 0.82em;
font-size: 0.8em;
font-weight: bold;
cursor: pointer;
@@ -790,7 +790,7 @@
.biography-portrait-hint {
margin: 0;
font-size: 0.78em;
font-size: 0.8em;
font-style: italic;
color: var(--cel-border);
}
@@ -838,7 +838,7 @@
text-align: center;
.cel-input-std();
font-family: var(--cel-font-title);
font-size: 1.1em;
font-size: 1.2em;
font-weight: bold;
color: var(--cel-green);
}
@@ -848,7 +848,7 @@
border-color: rgba(122,92,32,0.4);
.xp-depense-value {
font-family: var(--cel-font-title);
font-size: 1.1em;
font-size: 1.2em;
font-weight: bold;
color: var(--cel-border);
}
@@ -858,7 +858,7 @@
background: var(--cel-green);
border: 1px solid var(--cel-orange);
color: var(--cel-orange);
font-size: 0.78em;
font-size: 0.9em;
padding: 5px 12px;
cursor: pointer;
font-family: var(--cel-font-title);
@@ -875,14 +875,14 @@
.xp-log-table {
width: 100%;
border-collapse: collapse;
font-size: 0.82em;
font-size: 0.8em;
margin-bottom: 8px;
thead tr {
background: rgba(12,76,12,0.35);
th {
color: var(--cel-orange-light);
font-size: 0.75em;
font-size: 0.8em;
text-transform: uppercase;
letter-spacing: 0.04em;
padding: 3px 6px;
@@ -918,7 +918,7 @@
.xp-ref {
margin-top: 6px;
summary {
font-size: 0.78em;
font-size: 0.8em;
color: var(--cel-orange-light);
cursor: pointer;
letter-spacing: 0.03em;
@@ -930,7 +930,7 @@
.xp-ref-table {
width: 100%;
border-collapse: collapse;
font-size: 0.82em;
font-size: 0.8em;
margin-top: 6px;
thead tr {
@@ -941,7 +941,7 @@
}
th {
font-family: var(--cel-font-title);
font-size: 0.9em;
font-size: 1em;
letter-spacing: 0.05em;
text-transform: uppercase;
padding: 4px 8px;
@@ -987,7 +987,7 @@
.anomaly-block-title {
font-family: var(--cel-font-title);
font-size: 0.85em;
font-size: 0.9em;
text-transform: uppercase;
letter-spacing: 0.07em;
color: var(--cel-orange);
@@ -1000,7 +1000,7 @@
text-align: center;
color: var(--cel-border);
font-style: italic;
font-size: 0.85em;
font-size: 0.8em;
display: flex;
align-items: center;
justify-content: center;
@@ -1030,12 +1030,12 @@
flex: 1;
.anomaly-name {
font-family: var(--cel-font-title);
font-size: 1em;
font-size: 1.1em;
color: var(--cel-orange);
font-weight: bold;
}
.anomaly-subtype {
font-size: 0.75em;
font-size: 0.8em;
color: var(--cel-cream, #f0e8d4);
text-transform: uppercase;
letter-spacing: 0.05em;
@@ -1057,7 +1057,7 @@
margin-bottom: 6px;
.anomaly-level-label {
font-size: 0.72em;
font-size: 0.7em;
text-transform: uppercase;
color: var(--cel-cream, #f0e8d4);
opacity: 0.7;
@@ -1085,7 +1085,7 @@
flex-wrap: wrap;
.anomaly-uses-label {
font-size: 0.72em;
font-size: 0.7em;
text-transform: uppercase;
color: var(--cel-cream, #f0e8d4);
opacity: 0.7;
@@ -1110,7 +1110,7 @@
background: var(--cel-green);
border: 1px solid var(--cel-orange);
color: var(--cel-orange);
font-size: 0.72em;
font-size: 0.8em;
padding: 2px 8px;
cursor: pointer;
font-family: var(--cel-font-title);
+2 -2
View File
@@ -1,13 +1,13 @@
@font-face {
font-family: "CopaseticNF";
src: url("../assets/fonts/CopaseticNF.otf") format("opentype");
src: url("../assets/fonts/CopaseticNF.woff");
font-weight: normal;
font-style: normal;
}
@font-face {
font-family: "CopaseticNF";
src: url("../assets/fonts/CopaseticNF-Bold.otf") format("opentype");
src: url("../assets/fonts/CopaseticNF-Bold.woff");
font-weight: bold;
font-style: normal;
}
+8 -8
View File
@@ -85,7 +85,7 @@
border-bottom: 1px solid rgba(196,154,26,0.5);
color: var(--cel-orange);
font-family: var(--cel-font-title);
font-size: 1.4em;
font-size: 1.5em;
font-weight: bold;
letter-spacing: 0.06em;
padding: 2px 4px;
@@ -94,7 +94,7 @@
.actor-name {
font-family: var(--cel-font-title);
font-size: 1.4em;
font-size: 1.5em;
color: var(--cel-orange);
letter-spacing: 0.06em;
margin: 0;
@@ -120,7 +120,7 @@
gap: 4px;
label {
font-size: 0.65em;
font-size: 0.7em;
text-transform: uppercase;
letter-spacing: 0.06em;
color: var(--cel-orange-light);
@@ -131,7 +131,7 @@
// Styles identiques play mode et edit mode
span,
input[type="text"] {
font-size: 0.95em;
font-size: 0.9em;
font-family: inherit;
font-style: italic;
color: var(--cel-cream);
@@ -173,14 +173,14 @@
min-width: 52px;
label {
font-size: 0.62em;
font-size: 0.6em;
text-transform: uppercase;
letter-spacing: 0.08em;
color: var(--cel-orange-light);
}
.stat-value {
font-size: 1.4em;
font-size: 1.5em;
font-family: var(--cel-font-title);
color: var(--cel-orange);
font-weight: bold;
@@ -242,7 +242,7 @@
padding: 8px 16px;
color: rgba(240,232,212,0.8);
font-family: var(--cel-font-title);
font-size: 0.85em;
font-size: 0.9em;
text-transform: uppercase;
letter-spacing: 0.07em;
cursor: pointer;
@@ -331,7 +331,7 @@
.wound-value {
font-family: var(--cel-font-title);
font-size: 0.95em;
font-size: 1.1em;
font-weight: bold;
white-space: nowrap;
line-height: 1.2;
+20 -20
View File
@@ -22,7 +22,7 @@
.anomaly-section-title {
font-family: var(--cel-font-title);
font-size: 0.78em;
font-size: 0.9em;
text-transform: uppercase;
letter-spacing: 0.07em;
color: var(--cel-green-dark, #0c4c0c);
@@ -39,7 +39,7 @@
min-height: 60px;
padding: 4px 6px;
color: #1a1209;
font-size: 0.88em;
font-size: 0.9em;
line-height: 1.5;
.editor-content, .prosemirror { color: #1a1209; background: transparent; }
p { margin: 0 0 4px 0; color: #1a1209; }
@@ -77,7 +77,7 @@
border-bottom: 1px solid var(--cel-orange-light);
color: var(--cel-orange);
font-family: var(--cel-font-title);
font-size: 1.2em;
font-size: 1.3em;
font-weight: bold;
padding: 2px 4px;
}
@@ -114,7 +114,7 @@
background: transparent;
border: 1px solid var(--cel-orange-light);
color: var(--cel-orange);
font-size: 0.85em;
font-size: 0.8em;
option { background: var(--cel-green-dark); color: var(--cel-cream); }
}
}
@@ -123,7 +123,7 @@
display: flex;
align-items: center;
gap: 4px;
label { color: var(--cel-orange-light); font-size: 0.75em; text-transform: uppercase; }
label { color: var(--cel-orange-light); font-size: 0.8em; text-transform: uppercase; }
input[type="number"] {
width: 40px;
background: transparent;
@@ -147,7 +147,7 @@
padding: 5px 12px;
color: rgba(240,232,212,0.7);
font-family: var(--cel-font-title);
font-size: 0.78em;
font-size: 0.9em;
text-transform: uppercase;
letter-spacing: 0.07em;
cursor: pointer;
@@ -186,7 +186,7 @@
display: flex;
align-items: center;
gap: 4px;
label { color: var(--cel-orange-light); font-size: 0.72em; text-transform: uppercase; }
label { color: var(--cel-orange-light); font-size: 0.7em; text-transform: uppercase; }
input[type="number"] {
width: 44px;
background: transparent;
@@ -207,7 +207,7 @@
margin-bottom: 8px;
label {
display: block;
font-size: 0.75em;
font-size: 0.8em;
text-transform: uppercase;
letter-spacing: 0.05em;
color: var(--cel-border); // #7a5c20 — contraste WCAG AA sur fond crème
@@ -228,7 +228,7 @@
.scores-stat-col {
.scores-stat-name {
font-family: var(--cel-font-title);
font-size: 0.75em;
font-size: 0.8em;
color: var(--cel-orange); // gold
text-transform: uppercase;
border-bottom: 1px solid var(--cel-border);
@@ -266,7 +266,7 @@
display: flex;
align-items: center;
gap: 4px;
label { color: var(--cel-orange-light); font-size: 0.75em; text-transform: uppercase; }
label { color: var(--cel-orange-light); font-size: 0.8em; text-transform: uppercase; }
.level-input, .anomaly-level-value {
width: 38px;
background: transparent;
@@ -301,7 +301,7 @@
border: 1px solid rgba(196,154,26,0.4);
color: var(--cel-orange);
text-align: center;
font-size: 0.85em;
font-size: 0.8em;
}
}
@@ -327,7 +327,7 @@
.anomaly-skills-label {
color: var(--cel-orange-light, #c49a1a);
font-size: 0.72em;
font-size: 0.7em;
text-transform: uppercase;
letter-spacing: 0.05em;
margin-right: 2px;
@@ -339,7 +339,7 @@
border: 1px solid rgba(196,154,26,0.55);
border-radius: 3px;
padding: 1px 7px;
font-size: 0.72em;
font-size: 0.7em;
color: var(--cel-cream, #f0e8d4);
}
}
@@ -368,8 +368,8 @@
display: flex;
align-items: center;
gap: 4px;
label { font-size: 0.75em; color: var(--cel-orange-light); white-space: nowrap; }
select { background: rgba(0,0,0,0.3); border: 1px solid var(--cel-orange); color: var(--cel-orange); font-family: var(--cel-font-title); border-radius: 3px; padding: 2px 4px; font-size: 0.85em; }
label { font-size: 0.8em; color: var(--cel-orange-light); white-space: nowrap; }
select { background: rgba(0,0,0,0.3); border: 1px solid var(--cel-orange); color: var(--cel-orange); font-family: var(--cel-font-title); border-radius: 3px; padding: 2px 4px; font-size: 0.9em; }
}
}
.weapon-damage-badge {
@@ -380,9 +380,9 @@
border: 1px solid var(--cel-orange);
border-radius: 6px;
padding: 6px 12px;
.damage-label { font-size: 0.72em; text-transform: uppercase; color: var(--cel-orange-light); letter-spacing: 0.05em; }
.damage-value { font-family: var(--cel-font-title); font-size: 1.6em; font-weight: bold; color: var(--cel-orange); min-width: 28px; text-align: center; }
.damage-hint { font-size: 0.78em; color: var(--cel-cream); font-style: italic; }
.damage-label { font-size: 0.7em; text-transform: uppercase; color: var(--cel-orange-light); letter-spacing: 0.05em; }
.damage-value { font-family: var(--cel-font-title); font-size: 1.8em; font-weight: bold; color: var(--cel-orange); min-width: 28px; text-align: center; }
.damage-hint { font-size: 0.8em; color: var(--cel-cream); font-style: italic; }
}
}
@@ -404,10 +404,10 @@
border-radius: 6px;
padding: 8px 20px;
min-width: 110px;
label { font-size: 0.72em; text-transform: uppercase; color: var(--cel-orange-light); letter-spacing: 0.05em; }
label { font-size: 0.7em; text-transform: uppercase; color: var(--cel-orange-light); letter-spacing: 0.05em; }
.armure-stat-value {
input[type="number"], span {
font-family: var(--cel-font-title); font-size: 1.8em; font-weight: bold; color: var(--cel-orange);
font-family: var(--cel-font-title); font-size: 2em; font-weight: bold; color: var(--cel-orange);
text-align: center; background: transparent; border: none; width: 40px;
}
}
+1 -1
View File
@@ -2,7 +2,7 @@
.cel-section-header() {
font-family: var(--cel-font-title);
font-size: 0.78em;
font-size: 0.9em;
text-transform: uppercase;
letter-spacing: 0.1em;
// Gold instead of vivid green — Art Déco elegance
+21 -21
View File
@@ -14,12 +14,12 @@
color: var(--cel-orange);
border-radius: 3px;
padding: 2px 6px;
font-size: 0.85em;
font-size: 0.8em;
}
.npc-type-badge {
font-family: var(--cel-font-title);
font-size: 0.8em;
font-size: 0.9em;
letter-spacing: 0.05em;
text-transform: uppercase;
border-radius: 3px;
@@ -65,14 +65,14 @@
.domain-label-primary {
font-family: var(--cel-font-title);
font-weight: bold;
font-size: 1.1em;
font-size: 1.2em;
text-transform: uppercase;
letter-spacing: 0.06em;
color: var(--cel-orange);
}
.domain-label-secondary {
font-size: 0.75em;
font-size: 0.8em;
color: rgba(220,170,80,0.7);
font-style: italic;
text-transform: uppercase;
@@ -88,7 +88,7 @@
input.domain-value-input {
width: 40px;
.cel-input-std();
font-size: 1.2em;
font-size: 1.3em;
text-align: center;
font-family: var(--cel-font-title);
}
@@ -116,7 +116,7 @@
.domain-value {
font-family: var(--cel-font-title);
font-size: 1.4em;
font-size: 1.5em;
font-weight: bold;
color: var(--cel-orange);
min-width: 20px;
@@ -124,7 +124,7 @@
}
.domain-value-base {
font-size: 0.75em;
font-size: 0.8em;
color: rgba(220,170,80,0.6);
font-style: italic;
}
@@ -151,7 +151,7 @@
padding: 5px 10px;
font-family: var(--cel-font-title);
font-weight: bold;
font-size: 0.9em;
font-size: 1em;
text-transform: uppercase;
letter-spacing: 0.06em;
border-bottom: 1px solid rgba(196,154,26,0.4);
@@ -197,7 +197,7 @@
color: var(--cel-orange);
font-family: var(--cel-font-title);
font-weight: bold;
font-size: 0.9em;
font-size: 1em;
text-transform: uppercase;
letter-spacing: 0.06em;
border-radius: 4px 4px 0 0;
@@ -222,13 +222,13 @@
.faction-name {
font-family: var(--cel-font-title);
color: var(--cel-orange);
font-size: 0.95em;
font-size: 1.1em;
}
.faction-none {
font-style: italic;
color: rgba(122,92,32,0.5);
font-size: 0.85em;
font-size: 0.8em;
}
}
@@ -242,7 +242,7 @@
border-top: none;
border-radius: 0 0 4px 4px;
label { font-size: 0.85em; color: var(--cel-brown); }
label { font-size: 0.8em; color: var(--cel-brown); }
select { flex: 1; .cel-input-std(); }
}
}
@@ -269,7 +269,7 @@
font-family: var(--cel-font-title);
font-weight: bold;
text-transform: uppercase;
font-size: 1.1em;
font-size: 1.2em;
letter-spacing: 0.04em;
display: flex;
align-items: center;
@@ -284,7 +284,7 @@
height: 14px;
border-radius: 50%;
border: 1px solid currentColor;
font-size: 0.65em;
font-size: 0.7em;
font-family: var(--cel-font-body);
font-weight: bold;
text-transform: none;
@@ -340,7 +340,7 @@
gap: 6px;
padding: 4px 8px;
background: rgba(139,115,85,0.1);
font-size: 0.85em;
font-size: 0.8em;
label { color: var(--cel-border); }
input[type="number"] { width: 40px; .cel-input-std(); }
}
@@ -372,7 +372,7 @@
}
.item-tag {
font-size: 0.75em;
font-size: 0.8em;
padding: 1px 7px;
border-radius: 10px;
background: rgba(12,76,12,0.15);
@@ -399,14 +399,14 @@
justify-content: center;
min-width: 20px;
min-height: 20px;
font-size: 1.08rem;
font-size: 1.1rem;
line-height: 1;
}
}
}
.equip-empty {
font-size: 0.85em;
font-size: 0.8em;
font-style: italic;
color: var(--cel-border);
padding: 4px 8px;
@@ -465,7 +465,7 @@
.biography-portrait-empty {
padding: 14px;
color: var(--cel-border);
font-size: 0.82em;
font-size: 0.8em;
font-style: italic;
text-align: center;
line-height: 1.5;
@@ -498,7 +498,7 @@
border-radius: 4px;
background: linear-gradient(180deg, rgba(255,255,255,0.82), rgba(233,223,201,0.95));
color: var(--cel-green);
font-size: 0.82em;
font-size: 0.8em;
font-weight: bold;
cursor: pointer;
@@ -519,7 +519,7 @@
.biography-portrait-hint {
margin: 0;
font-size: 0.78em;
font-size: 0.8em;
font-style: italic;
color: var(--cel-border);
}
+100 -100
View File
@@ -30,7 +30,7 @@
.roll-actor {
font-family: var(--cel-font-title, "CopaseticNF", serif);
color: var(--cel-orange-light, #ddb84a);
font-size: 0.82em;
font-size: 0.9em;
letter-spacing: 0.07em;
text-transform: uppercase;
opacity: 0.9;
@@ -38,7 +38,7 @@
.roll-skill-line {
font-family: var(--cel-font-title, "CopaseticNF", serif);
font-size: 1.31em;
font-size: 1.4em;
color: var(--cel-cream, #f0e8d4);
margin-top: 2px;
@@ -58,24 +58,24 @@
justify-content: center;
flex-wrap: wrap;
gap: 4px;
font-size: 0.86em;
font-size: 0.9em;
color: var(--cel-cream, #f0e8d4);
.dval, .nb-dice {
font-family: var(--cel-font-title, "CopaseticNF", serif);
font-size: 1.78em;
font-size: 2em;
color: var(--cel-orange, #e07b00);
font-weight: bold;
line-height: 1;
}
.dlabel { font-size: 0.82em; text-transform: uppercase; letter-spacing: 0.04em; opacity: 0.75; }
.dlabel { font-size: 0.8em; text-transform: uppercase; letter-spacing: 0.04em; opacity: 0.75; }
.dminus { color: #f0a0a0; font-weight: bold; }
.deq { opacity: 0.55; }
.ddice { color: var(--cel-orange, #e07b00); }
}
.wound-info {
font-size: 0.77em;
font-size: 0.8em;
color: #f0a0a0;
margin-top: 3px;
}
@@ -117,17 +117,17 @@
display: flex;
align-items: center;
justify-content: center;
font-size: 0.68em;
font-size: 0.7em;
color: white;
}
}
}
.moon-icon { font-size: 1.26em; flex-shrink: 0; }
.moon-icon { font-size: 1.3em; flex-shrink: 0; }
.moon-text {
font-family: var(--cel-font-title, "CopaseticNF", serif);
font-size: 0.92em;
font-size: 1em;
color: var(--cel-green, #0c4c0c);
}
}
@@ -152,7 +152,7 @@
label {
flex: 0 0 110px;
font-size: 0.82em;
font-size: 0.8em;
text-transform: uppercase;
letter-spacing: 0.04em;
color: var(--cel-border, #7a5c20);
@@ -165,7 +165,7 @@
padding: 3px 7px;
background: rgba(255,255,255,0.85);
font-family: inherit;
font-size: 0.89em;
font-size: 0.9em;
color: var(--cel-text, #2f2413);
&:focus { outline: 1px solid var(--cel-orange, #e07b00); }
@@ -233,7 +233,7 @@
display: flex;
align-items: center;
justify-content: center;
font-size: 0.68em;
font-size: 0.7em;
color: white;
}
}
@@ -242,7 +242,7 @@
}
.destin-icon {
font-size: 1.16em;
font-size: 1.2em;
color: var(--cel-orange, #e07b00);
flex-shrink: 0;
}
@@ -252,20 +252,20 @@
.destin-main {
font-family: var(--cel-font-title, "CopaseticNF", serif);
font-size: 0.95em;
font-size: 1.1em;
color: var(--cel-green, #0c4c0c);
display: block;
}
.destin-bonus {
font-size: 0.76em;
font-size: 0.8em;
color: var(--cel-border, #7a5c20);
font-style: italic;
}
}
.destin-count {
font-size: 0.79em;
font-size: 0.8em;
font-weight: bold;
color: var(--cel-green, #0c4c0c);
background: rgba(196,154,26,0.2);
@@ -326,7 +326,7 @@
display: flex;
align-items: center;
justify-content: center;
font-size: 0.79em;
font-size: 0.8em;
color: white;
}
}
@@ -338,19 +338,19 @@
flex: 1;
.puiser-main {
font-family: var(--cel-font-title, "CopaseticNF", serif);
font-size: 0.95em;
font-size: 1.1em;
color: var(--cel-accent, #6b1e28);
display: block;
}
.puiser-sub {
font-size: 0.73em;
font-size: 0.7em;
color: rgba(0,0,0,0.45);
font-style: italic;
}
}
.puiser-cost {
font-size: 0.84em;
font-size: 0.8em;
font-weight: bold;
color: var(--cel-accent, #6b1e28);
background: rgba(107,30,40,0.1);
@@ -398,14 +398,14 @@
display: flex;
align-items: center;
justify-content: center;
font-size: 0.63em;
font-size: 0.6em;
color: white;
}
}
}
.fortune-icon {
font-size: 1.16em;
font-size: 1.2em;
color: var(--cel-green, #0c4c0c);
flex-shrink: 0;
}
@@ -414,19 +414,19 @@
flex: 1;
.fortune-main {
font-family: var(--cel-font-title, "CopaseticNF", serif);
font-size: 0.95em;
font-size: 1.1em;
color: var(--cel-green, #0c4c0c);
display: block;
}
.fortune-bonus {
font-size: 0.76em;
font-size: 0.8em;
color: var(--cel-border, #7a5c20);
font-style: italic;
}
}
.fortune-badge {
font-size: 0.84em;
font-size: 0.8em;
font-weight: bold;
color: var(--cel-green, #0c4c0c);
background: rgba(12,76,12,0.12);
@@ -450,7 +450,7 @@
gap: 10px;
.preview-label {
font-size: 0.73em;
font-size: 0.7em;
text-transform: uppercase;
letter-spacing: 0.07em;
color: var(--cel-border, #7a5c20);
@@ -459,7 +459,7 @@
.preview-formula {
font-family: var(--cel-font-title, "CopaseticNF", serif);
font-size: 1.68em;
font-size: 1.9em;
color: var(--cel-orange, #e07b00);
font-weight: bold;
letter-spacing: 0.04em;
@@ -481,7 +481,7 @@
.moon-effect-label {
display: block;
font-family: var(--cel-font-title);
font-size: 0.76em;
font-size: 0.8em;
font-weight: bold;
color: var(--cel-border, #7a5c20);
text-transform: uppercase;
@@ -498,7 +498,7 @@
.moon-effect-btn {
font-family: var(--cel-font-title);
font-size: 0.82em;
font-size: 0.9em;
font-weight: bold;
padding: 4px 11px;
border-radius: 4px;
@@ -523,7 +523,7 @@
}
.moon-effect-narrative {
font-size: 0.76em;
font-size: 0.8em;
color: var(--cel-border, #7a5c20);
font-style: italic;
align-self: center;
@@ -535,7 +535,7 @@
align-items: center;
gap: 4px;
margin-top: 6px;
font-size: 0.8em;
font-size: 0.9em;
font-family: var(--cel-font-title);
font-style: italic;
padding: 3px 9px;
@@ -590,16 +590,16 @@
color: var(--cel-orange, #e07b00);
font-weight: bold;
letter-spacing: 0.05em;
font-size: 0.97em;
font-size: 1.1em;
}
.skill-info {
color: var(--cel-cream, #f0e8d4);
font-size: 0.81em;
font-size: 0.8em;
font-style: italic;
.stat-lbl { color: var(--cel-orange-light, #ddb84a); }
.sep { margin: 0 2px; opacity: 0.5; }
}
.wound-info { font-size: 0.73em; color: #f0a0a0; }
.wound-info { font-size: 0.7em; color: #f0a0a0; }
}
.moon-badge { display: none; }
@@ -624,7 +624,7 @@
border-radius: 4px;
background: white;
font-weight: bold;
font-size: 1.1em;
font-size: 1.2em;
font-family: var(--cel-font-title, "CopaseticNF", serif);
box-shadow: 1px 1px 2px rgba(0,0,0,0.12);
color: var(--cel-text, #2f2413);
@@ -653,15 +653,15 @@
padding: 5px 10px 4px;
background: var(--cel-cream, #f0e8d4);
border-top: 1px solid rgba(122,92,32,0.2);
font-size: 0.87em;
font-size: 0.9em;
color: #555;
.fl-label { color: rgba(0,0,0,0.4); font-size: 0.92em; text-transform: uppercase; letter-spacing: 0.04em; margin-right: 2px; }
.fl-label { color: rgba(0,0,0,0.4); font-size: 0.9em; text-transform: uppercase; letter-spacing: 0.04em; margin-right: 2px; }
.fl-ndice { color: var(--cel-green, #0c4c0c); font-weight: bold; }
.fl-sum { font-weight: bold; color: var(--cel-text, #2f2413); }
.fl-total {
font-family: var(--cel-font-title, "CopaseticNF", serif);
font-size: 1.58em;
font-size: 1.7em;
color: var(--cel-orange, #e07b00);
font-weight: bold;
line-height: 1;
@@ -684,14 +684,14 @@
padding: 5px 12px 6px;
background: var(--cel-cream, #f0e8d4);
border-top: 1px solid rgba(122,92,32,0.2);
font-size: 0.86em;
font-size: 0.9em;
.vs-wrap {
display: flex;
align-items: baseline;
gap: 5px;
}
.vs-label { color: rgba(0,0,0,0.35); text-transform: uppercase; font-size: 0.84em; }
.vs-label { color: rgba(0,0,0,0.35); text-transform: uppercase; font-size: 0.8em; }
.diff-label{ font-style: italic; color: var(--cel-green, #0c4c0c); }
.diff-val { color: rgba(0,0,0,0.45); }
@@ -699,7 +699,7 @@
padding: 2px 10px;
border-radius: 12px;
font-weight: bold;
font-size: 1.1em;
font-size: 1.2em;
font-family: var(--cel-font-title, "CopaseticNF", serif);
letter-spacing: 0.05em;
@@ -719,7 +719,7 @@
// ── Destin utilisé ──
.used-info {
text-align: center;
font-size: 0.81em;
font-size: 0.8em;
color: var(--cel-orange, #e07b00);
padding: 3px 8px;
background: rgba(196,154,26,0.1);
@@ -757,7 +757,7 @@
}
.damage-header {
font-size: 0.76em;
font-size: 0.8em;
text-transform: uppercase;
letter-spacing: 0.08em;
color: var(--cel-border, #7a5c20);
@@ -774,13 +774,13 @@
.damage-value {
font-family: var(--cel-font-title, "CopaseticNF", serif);
font-size: 1.99em;
font-size: 2.2em;
line-height: 1;
color: var(--cel-orange, #e07b00);
}
.damage-unit {
font-size: 0.86em;
font-size: 0.9em;
color: var(--cel-green, #0c4c0c);
font-weight: bold;
}
@@ -814,7 +814,7 @@
background: var(--cel-green, #0c4c0c);
color: var(--cel-orange-light, #ddb84a);
padding: 4px 10px;
font-size: 0.82em;
font-size: 0.8em;
font-weight: bold;
cursor: pointer;
@@ -858,7 +858,7 @@
background: rgba(12,76,12,0.1);
color: var(--cel-green, #0c4c0c);
font-weight: bold;
font-size: 0.95em;
font-size: 0.9em;
}
// ── Résultat dé de lune ──
@@ -871,7 +871,7 @@
font-family: var(--cel-font-body, serif);
.moon-die-face {
font-size: 1.89em;
font-size: 1.9em;
line-height: 1;
flex-shrink: 0;
}
@@ -884,7 +884,7 @@
}
.moon-die-phase {
font-size: 0.76em;
font-size: 0.8em;
opacity: 0.75;
text-transform: uppercase;
letter-spacing: 0.05em;
@@ -892,14 +892,14 @@
.moon-die-type {
font-family: var(--cel-font-title, "CopaseticNF", serif);
font-size: 1em;
font-size: 1.1em;
font-weight: bold;
letter-spacing: 0.06em;
text-transform: uppercase;
}
.moon-die-desc {
font-size: 0.76em;
font-size: 0.8em;
font-style: italic;
opacity: 0.85;
line-height: 1.3;
@@ -936,13 +936,13 @@
border-top: 2px solid rgba(0,0,0,0.1);
.result-icon {
font-size: 0.89em;
font-size: 0.9em;
opacity: 0.85;
letter-spacing: 0.15em;
}
.result-label { font-size: 1.26em; line-height: 1.2; }
.result-label { font-size: 1.3em; line-height: 1.2; }
.result-desc {
font-size: 0.68em;
font-size: 0.7em;
letter-spacing: 0.08em;
margin-top: 2px;
opacity: 0.8;
@@ -1010,7 +1010,7 @@
.welcome-title {
font-family: var(--cel-font-title, "CopaseticNF", serif);
color: var(--cel-orange, #e07b00);
font-size: 1.03em;
font-size: 1.1em;
letter-spacing: 0.05em;
text-transform: uppercase;
}
@@ -1018,7 +1018,7 @@
.welcome-body {
padding: 9px 11px 10px;
color: var(--cel-text, #2f2413);
font-size: 0.88em;
font-size: 0.9em;
line-height: 1.45;
p {
@@ -1038,7 +1038,7 @@
display: block;
margin-bottom: 2px;
color: var(--cel-border, #7a5c20);
font-size: 0.76em;
font-size: 0.8em;
font-weight: bold;
letter-spacing: 0.05em;
text-transform: uppercase;
@@ -1088,7 +1088,7 @@
.portrait-message-title {
font-family: var(--cel-font-title, "CopaseticNF", serif);
color: var(--cel-orange, #e07b00);
font-size: 1.03em;
font-size: 1.1em;
letter-spacing: 0.05em;
text-transform: uppercase;
}
@@ -1101,7 +1101,7 @@
.portrait-message-name {
margin-bottom: 8px;
color: var(--cel-green, #0c4c0c);
font-size: 0.88em;
font-size: 0.9em;
font-weight: bold;
letter-spacing: 0.04em;
text-transform: uppercase;
@@ -1208,7 +1208,7 @@
font-family: var(--cel-font-title, "CopaseticNF", serif);
text-transform: uppercase;
letter-spacing: 0.05em;
font-size: 0.92em;
font-size: 1em;
}
.faction-aspect-points {
@@ -1216,7 +1216,7 @@
flex-wrap: wrap;
gap: 5px;
margin-bottom: 4px;
font-size: 0.84em;
font-size: 0.8em;
}
.faction-aspect-point-card {
@@ -1230,7 +1230,7 @@
border: 1px solid rgba(122,92,32,0.18);
strong {
font-size: 0.76em;
font-size: 0.8em;
text-transform: uppercase;
letter-spacing: 0.04em;
color: var(--cel-border, #7a5c20);
@@ -1239,14 +1239,14 @@
em {
font-style: normal;
font-family: var(--cel-font-title, "CopaseticNF", serif);
font-size: 1.1em;
font-size: 1.2em;
color: var(--cel-orange, #e07b00);
line-height: 1;
}
}
.faction-aspect-source-line {
font-size: 0.82em;
font-size: 0.8em;
color: var(--cel-border, #7a5c20);
}
@@ -1256,7 +1256,7 @@
border-radius: 4px;
background: rgba(184, 74, 46, 0.08);
color: var(--cel-accent, #6b1e28);
font-size: 0.84em;
font-size: 0.8em;
}
.faction-aspect-tag-list,
@@ -1274,7 +1274,7 @@
background: rgba(12, 76, 12, 0.08);
border: 1px solid rgba(12, 76, 12, 0.18);
color: var(--cel-green, #0c4c0c);
font-size: 0.76em;
font-size: 0.8em;
font-weight: bold;
}
@@ -1288,7 +1288,7 @@
label {
display: block;
margin-bottom: 2px;
font-size: 0.71em;
font-size: 0.7em;
text-transform: uppercase;
letter-spacing: 0.04em;
color: var(--cel-border, #7a5c20);
@@ -1303,7 +1303,7 @@
border-radius: 3px;
padding: 2px 6px;
background: rgba(255,255,255,0.9);
font-size: 0.82em;
font-size: 0.8em;
color: var(--cel-text, #2f2413);
box-sizing: border-box;
}
@@ -1335,7 +1335,7 @@
background: rgba(224,123,0,0.12);
color: var(--cel-orange, #e07b00);
font-family: var(--cel-font-title, "CopaseticNF", serif);
font-size: 0.76em;
font-size: 0.8em;
line-height: 1;
cursor: help;
vertical-align: middle;
@@ -1357,7 +1357,7 @@
color: var(--cel-orange, #e07b00);
font-family: var(--cel-font-title, "CopaseticNF", serif);
margin-bottom: 4px;
font-size: 0.86em;
font-size: 0.9em;
}
}
@@ -1365,7 +1365,7 @@
display: flex;
align-items: center;
gap: 4px;
font-size: 0.78em;
font-size: 0.8em;
}
.faction-aspect-active-list {
@@ -1398,13 +1398,13 @@
.faction-aspect-active-value {
color: var(--cel-orange, #e07b00);
font-family: var(--cel-font-title, "CopaseticNF", serif);
font-size: 0.97em;
font-size: 1.1em;
}
.faction-aspect-empty {
color: rgba(0,0,0,0.5);
font-style: italic;
font-size: 0.78em;
font-size: 0.8em;
}
.faction-aspect-remove-block {
@@ -1433,7 +1433,7 @@
border-left: 3px solid #c0392b;
border-radius: 4px;
color: #f0c0c0;
font-size: 0.89em;
font-size: 0.9em;
.wound-icon { font-size: 1em; }
}
}
@@ -1453,9 +1453,9 @@
align-items: center;
gap: 0.3em;
margin-bottom: 1px;
font-size: 0.89em;
font-size: 0.9em;
color: var(--cel-orange, #e07b00);
.weapon-icon-small { font-size: 0.95em; }
.weapon-icon-small { font-size: 0.9em; }
.weapon-degats-small {
font-weight: bold;
color: var(--cel-border, #7a5c20);
@@ -1470,20 +1470,20 @@
align-items: center;
gap: 0.4em;
margin-bottom: 2px;
font-size: 0.95em;
font-size: 0.9em;
color: var(--cel-orange, #e07b00);
.weapon-icon { font-size: 1em; }
.weapon-degats {
font-weight: bold;
color: var(--cel-border, #7a5c20);
font-size: 0.89em;
font-size: 0.9em;
}
}
.form-corps-pnj {
.corps-pnj-input {
width: 70px;
font-size: 1.16em;
font-size: 1.3em;
font-weight: bold;
text-align: center;
font-family: var(--cel-font-title, "CopaseticNF", serif);
@@ -1504,7 +1504,7 @@
label {
color: var(--cel-orange, #e07b00);
font-weight: bold;
font-size: 0.89em;
font-size: 0.9em;
display: flex;
align-items: center;
gap: 5px;
@@ -1519,7 +1519,7 @@
border: 1px solid rgba(196, 154, 26, 0.5);
border-radius: 3px;
padding: 2px 4px;
font-size: 0.89em;
font-size: 0.9em;
max-width: 200px;
}
}
@@ -1535,7 +1535,7 @@
align-items: center;
gap: 6px;
color: var(--cel-orange, #e07b00);
font-size: 0.92em;
font-size: 0.9em;
font-style: italic;
i { opacity: 0.8; }
@@ -1550,7 +1550,7 @@
label {
color: var(--cel-accent, #6b1e28);
font-size: 0.89em;
font-size: 0.9em;
font-weight: bold;
display: flex;
align-items: center;
@@ -1566,13 +1566,13 @@
border: 1px solid rgba(200, 100, 60, 0.4);
border-radius: 3px;
padding: 2px 4px;
font-size: 0.89em;
font-size: 0.9em;
}
}
.form-threshold-fixed {
.threshold-value {
font-size: 1.26em;
font-size: 1.4em;
font-weight: bold;
font-family: var(--cel-font-title, "CopaseticNF", serif);
color: var(--cel-orange, #e07b00);
@@ -1598,7 +1598,7 @@
input[type="checkbox"] { flex-shrink: 0; }
.opposition-icon {
font-size: 1.26em;
font-size: 1.3em;
color: var(--cel-orange, #e07b00);
}
@@ -1609,14 +1609,14 @@
.opposition-main {
font-weight: bold;
font-size: 0.95em;
font-size: 1.1em;
font-family: var(--cel-font-title, "CopaseticNF", serif);
color: var(--cel-orange, #e07b00);
}
.opposition-sub {
font-size: 0.79em;
opacity: 0.7;
font-size: 0.8em;
color: #8a7060;
font-style: italic;
}
}
@@ -1651,7 +1651,7 @@
.moon-standalone-title {
font-family: var(--cel-font-title);
font-size: 1em;
font-size: 1.1em;
font-weight: bold;
color: var(--cel-green-dark, #0c4c0c);
text-transform: uppercase;
@@ -1659,7 +1659,7 @@
}
.moon-standalone-actor {
font-size: 0.89em;
font-size: 0.9em;
color: var(--cel-text, #333);
font-style: italic;
}
@@ -1688,13 +1688,13 @@
.moon-standalone-phase {
font-family: var(--cel-font-title);
font-size: 1.0em;
font-size: 1.1em;
font-weight: bold;
color: var(--cel-text, #333);
}
.moon-standalone-value {
font-size: 0.84em;
font-size: 0.8em;
color: var(--cel-text-light, #666);
font-style: italic;
}
@@ -1711,7 +1711,7 @@
gap: 8px;
.moon-interpret-label {
font-size: 0.76em;
font-size: 0.8em;
text-transform: uppercase;
letter-spacing: 0.07em;
color: rgba(0,0,0,0.45);
@@ -1719,7 +1719,7 @@
}
.moon-fortune {
font-size: 0.89em;
font-size: 0.9em;
font-weight: bold;
border-radius: 3px;
padding: 1px 8px;
@@ -1783,11 +1783,11 @@
color: var(--cel-orange, #e07b00);
font-weight: bold;
letter-spacing: 0.05em;
font-size: 0.97em;
font-size: 1.1em;
}
.skill-info {
color: var(--cel-cream, #f0e8d4);
font-size: 0.81em;
font-size: 0.8em;
font-style: italic;
}
}
@@ -1815,19 +1815,19 @@
}
.initiative-icon {
font-size: 1.16em;
font-size: 1.2em;
opacity: 0.9;
font-style: normal;
}
.initiative-score {
font-size: 2.52em;
font-size: 2.5em;
font-weight: bold;
line-height: 1;
}
.initiative-detail {
font-size: 0.68em;
font-size: 0.7em;
opacity: 0.75;
font-style: italic;
font-family: var(--cel-font-body, serif);
+24 -24
View File
@@ -16,7 +16,7 @@
{{#each (lookup ../skills statId) as |skill skillId|}}
{{#if @root.isEditMode}}
<div class="skill-row edit-mode" data-stat-id="{{statId}}" data-skill-id="{{skillId}}">
<span class="skill-name">{{localize skill.label}}</span>
<span class="skill-name" data-tooltip="{{localize skill.tooltip}}">{{localize skill.label}}</span>
<div class="skill-checkboxes-container">
<div class="skill-checkboxes">
{{#each (range 8) as |lvl|}}
@@ -31,7 +31,7 @@
{{else}}
<div class="skill-row rollable" data-stat-id="{{statId}}" data-skill-id="{{skillId}}"
title="{{localize 'CELESTOPOL.Roll.clickToRoll'}}">
<span class="skill-name">{{localize skill.label}}</span>
<span class="skill-name" data-tooltip="{{localize skill.tooltip}}">{{localize skill.label}}</span>
<div class="skill-checkboxes-container">
<div class="skill-checkboxes">
{{#each (range 8) as |lvl|}}
@@ -49,8 +49,29 @@
{{/each}}
</div>
{{!-- Items : Anomalie (unique), Aspects, Attributs --}}
{{!-- Items : Aspects, Anomalie --}}
<div class="items-section">
{{!-- Aspects --}}
<div class="items-group">
<div class="items-header">
<span>{{localize "CELESTOPOL.Item.aspects"}}</span>
{{#if isEditMode}}
<a data-action="createAspect" title="{{localize 'CELESTOPOL.Item.newAspect'}}"><i class="fas fa-plus"></i></a>
{{/if}}
</div>
{{#each aspects as |item|}}
<div class="item-row" data-item-id="{{item.id}}" data-item-uuid="{{item.uuid}}" data-drag="true">
<img src="{{item.img}}" class="item-icon" alt="{{item.name}}">
<span class="item-name">{{item.name}}</span>
<span class="item-value">{{item.system.valeur}}</span>
<div class="item-controls">
<a data-action="edit" data-item-uuid="{{item.uuid}}"><i class="fas fa-edit"></i></a>
{{#if ../isEditMode}}<a data-action="delete" data-item-uuid="{{item.uuid}}"><i class="fas fa-trash"></i></a>{{/if}}
</div>
</div>
{{/each}}
</div>
{{!-- Anomalie : bloc proéminent unique --}}
<div class="anomaly-block">
<div class="anomaly-block-header">
@@ -124,26 +145,5 @@
{{/if}}
</div>
{{!-- Aspects --}}
<div class="items-group">
<div class="items-header">
<span>{{localize "CELESTOPOL.Item.aspects"}}</span>
{{#if isEditMode}}
<a data-action="createAspect" title="{{localize 'CELESTOPOL.Item.newAspect'}}"><i class="fas fa-plus"></i></a>
{{/if}}
</div>
{{#each aspects as |item|}}
<div class="item-row" data-item-id="{{item.id}}" data-item-uuid="{{item.uuid}}" data-drag="true">
<img src="{{item.img}}" class="item-icon" alt="{{item.name}}">
<span class="item-name">{{item.name}}</span>
<span class="item-value">{{item.system.valeur}}</span>
<div class="item-controls">
<a data-action="edit" data-item-uuid="{{item.uuid}}"><i class="fas fa-edit"></i></a>
{{#if ../isEditMode}}<a data-action="delete" data-item-uuid="{{item.uuid}}"><i class="fas fa-trash"></i></a>{{/if}}
</div>
</div>
{{/each}}
</div>
</div>
</div>