fix: overlapping "10" sur d10, hover, suppression dice-so-nice

Plage de des dans la feuille
- "10" superpose sur l'icone d10 (plus de colonne verticale)
- Passe de 40x56px a 40x40px (carre)
- Couleur hover (bordure + texte violets, glow)

Boutons fa-dice-d10 (magies, kung-fu, armes, initiative)
- Override CSS : affiche "10" + icone d10 SVG superposes
- Couleur hover sur le texte "10"

Suppression images dice-so-nice inutilisees
- src/ui/dice.js supprime (referencait des images manquantes)
- Import et appel registerDice retires de system.js

Divers
- Retire img-die-sm des templates skills/nghang (ecrasait la taille des plaques)
- Reduit padding/gaps de la grille de faces dans le chat
- Supprime overflow:hidden sur cde-roll-result
This commit is contained in:
2026-07-01 17:21:12 +02:00
parent a5406ea901
commit af72ca5ceb
8 changed files with 544 additions and 668 deletions
+280 -256
View File
@@ -1,4 +1,4 @@
/* -------------------------------------------
/* -------------------------------------------
Fonts
---------------------------------------------*/
@font-face {
@@ -396,22 +396,17 @@ section.npc .cde-neon-tabs .item.active {
.cde-tab-body {
flex: 1 1 0;
min-height: 0;
display: flex;
flex-direction: column;
padding: 12px;
background: #0d1520;
border: 1px solid #1a2436;
border-top: none;
border-radius: 0 0 8px 8px;
overflow: hidden;
overflow-y: auto;
}
.cde-tab-body .tab {
display: none;
flex: 1 1 0;
min-height: 0;
flex-direction: column;
gap: 12px;
overflow-y: auto;
}
.cde-tab-body .tab.active {
display: flex;
@@ -452,25 +447,12 @@ section.npc .cde-neon-tabs .item.active {
flex-direction: column;
}
.cde-notes-editor .editor {
flex: 1 1 auto;
flex: 1 1 0;
min-height: 200px;
height: 100%;
border-radius: 8px;
border: 1px solid #1a2436;
background: #101622;
}
.cde-notes-editor .editor .tox {
height: 100% !important;
min-height: 100% !important;
}
.cde-notes-editor .editor .tox-editor-container {
height: 100% !important;
min-height: 100% !important;
}
.cde-notes-editor .editor iframe {
height: 100% !important;
min-height: 100% !important;
}
.cde-technique-card {
border-left: 3px solid #ff3d5a;
background: rgba(16, 22, 34, 0.8);
@@ -2179,25 +2161,6 @@ section.npc .cde-neon-tabs .item.active {
.cde-magic-toggle:hover i {
color: #e2e8f4;
}
.cde-magic-order-btn {
width: 20px;
height: 20px;
display: flex;
align-items: center;
justify-content: center;
cursor: pointer;
color: #7d94b8;
border-radius: 3px;
flex-shrink: 0;
transition: color 0.12s, background 0.12s;
}
.cde-magic-order-btn i {
font-size: 9px;
}
.cde-magic-order-btn:hover {
color: #e2e8f4;
background: rgba(38, 56, 83, 0.25);
}
.cde-magic-specialities {
border-top: 1px solid #1a2436;
padding: 4px 0;
@@ -2780,82 +2743,6 @@ section.npc .cde-neon-tabs .item.active {
color: #4a9eff;
text-shadow: 0 0 8px rgba(74, 158, 255, 0.5);
}
/* Recovery roll chat message */
.cde-chat-recovery {
display: flex;
flex-direction: column;
gap: 8px;
padding: 8px 12px;
}
.cde-chat-recovery-header {
display: flex;
align-items: center;
gap: 8px;
}
.cde-chat-recovery-icon {
width: 28px;
height: 28px;
object-fit: contain;
}
.cde-chat-recovery-title {
font-family: "Averia", sans-serif;
font-size: 14px;
font-weight: 700;
color: #e2e8f4;
}
.cde-chat-recovery-dice {
display: flex;
align-items: center;
gap: 8px;
font-size: 12px;
}
.cde-chat-recovery-dice-label {
font-weight: 700;
color: #00d4d4;
}
.cde-chat-recovery-dice-results {
font-family: monospace;
font-size: 13px;
color: #e2e8f4;
}
.cde-chat-recovery-results {
display: flex;
flex-direction: column;
gap: 4px;
padding: 6px 8px;
border-radius: 4px;
font-size: 12px;
}
.cde-chat-recovery-even {
display: flex;
align-items: center;
gap: 6px;
color: #4a9eff;
}
.cde-chat-recovery-odd {
display: flex;
align-items: center;
gap: 6px;
color: #cc44ff;
}
.cde-chat-recovery-count {
display: inline-flex;
align-items: center;
justify-content: center;
width: 22px;
height: 22px;
border-radius: 50%;
font-size: 11px;
font-weight: 700;
color: #fff;
flex-shrink: 0;
}
.cde-chat-recovery-even .cde-chat-recovery-count {
background: #4a9eff;
}
.cde-chat-recovery-odd .cde-chat-recovery-count {
background: #cc44ff;
}
.cde-tabs {
margin-top: 12px;
border-bottom: 1px solid #1a2436;
@@ -2889,7 +2776,7 @@ section.npc .cde-neon-tabs .item.active {
margin-top: -2px;
}
#pause > img {
content: url("/systems/fvtt-chroniques-de-l-etrange/images/wheel.webp");
content: url("/systems/fvtt-chroniques-de-l-etrange/images/logo_cde.webp");
height: 192px;
width: 192px;
top: -45px;
@@ -2940,30 +2827,6 @@ strong.ellipsis {
#interface .chat-message .message-header .message-sender {
width: 100px;
}
.cde-recovery-bar {
margin-bottom: 10px;
}
.cde-recovery-btn {
display: flex;
align-items: center;
justify-content: center;
gap: 8px;
width: 100%;
padding: 10px 16px;
border: 1px solid #4a9eff;
border-radius: 6px;
background: rgba(74, 158, 255, 0.15);
color: #4a9eff;
font-family: "Averia", sans-serif;
font-size: 14px;
font-weight: 700;
cursor: pointer;
transition: background 0.15s, filter 0.15s;
}
.cde-recovery-btn:hover {
background: rgba(74, 158, 255, 0.3);
filter: brightness(1.1);
}
.cde-flex-center-text {
display: flex;
justify-content: center;
@@ -3309,9 +3172,7 @@ ol.item-list li.item h4.item-name {
flex: 1 1 0;
margin: 0;
font-size: 13px;
font-weight: 600;
color: #e2e8f4;
font-family: "Signika", sans-serif;
}
ol.item-list li.item .cde-item-stat {
font-family: monospace;
@@ -3535,7 +3396,6 @@ ol.item-list li.item .item-controls a.item-control:hover {
font-family: 'Share Tech Mono', monospace;
border-radius: 4px;
border: 1px solid #1a2436;
overflow: hidden;
}
.cde-roll-result .cde-rr-header {
display: flex;
@@ -3644,12 +3504,6 @@ ol.item-list li.item .item-controls a.item-control:hover {
color: var(--rr-accent, #e2e8f4);
text-shadow: 0 0 12px var(--rr-accent, transparent);
}
.cde-roll-result .cde-rr-hero .cde-rr-spell-power .cde-rr-spell-power-formula {
font-size: 10px;
color: #7d94b8;
margin: 2px 0;
white-space: nowrap;
}
.cde-roll-result .cde-rr-hero .cde-rr-spell-power .cde-rr-spell-power-label {
font-size: 9px;
font-weight: 700;
@@ -3768,8 +3622,8 @@ ol.item-list li.item .item-controls a.item-control:hover {
.cde-roll-result .cde-dice-grid {
display: grid;
grid-template-columns: repeat(10, 1fr);
gap: 3px;
padding: 8px 8px 6px;
gap: 1px;
padding: 6px 4px 4px;
border-top: 1px solid #1a2436;
}
.cde-roll-result .cde-dice-grid .cde-dice-cell {
@@ -3784,11 +3638,6 @@ ol.item-list li.item .item-controls a.item-control:hover {
color: #e2e8f4;
line-height: 1;
}
.cde-roll-result .cde-dice-grid .cde-dice-cell .cde-dice-plate {
width: 100%;
border: none;
opacity: 0.65;
}
.cde-initiative-prompt .cde-roll-field {
flex-direction: column;
align-items: stretch;
@@ -4545,105 +4394,6 @@ ol.item-list li.item .item-controls a.item-control:hover {
color: #7d94b8;
text-align: center;
}
/* Duplicate row highlight */
.cde-migration-row-duplicate {
background: rgba(212, 175, 55, 0.15);
}
.cde-migration-duplicate-icon {
color: #d4af37;
margin-right: 4px;
font-size: 11px;
}
/* Confirmation bar */
.cde-migration-confirm-bar {
display: flex;
flex-direction: column;
gap: 8px;
padding: 12px;
border: 1px solid rgba(212, 175, 55, 0.7);
border-radius: 6px;
background: rgba(212, 175, 55, 0.1);
}
.cde-migration-confirm-msg {
margin: 0;
font-size: 12px;
color: #e2e8f4;
display: flex;
align-items: center;
gap: 6px;
}
.cde-migration-confirm-msg i {
color: #d4af37;
}
.cde-migration-confirm-duplicates {
margin: 0;
font-size: 11px;
color: #e07070;
display: flex;
align-items: center;
gap: 6px;
}
.cde-migration-confirm-duplicates i {
color: #e07070;
}
.cde-migration-confirm-actions {
display: flex;
gap: 8px;
justify-content: center;
margin-top: 4px;
}
.cde-migration-confirm-btn {
display: inline-flex;
align-items: center;
gap: 8px;
padding: 9px 24px;
border: none;
border-radius: 6px;
background: #4a9eff;
color: #fff;
font-size: 13px;
font-weight: 700;
cursor: pointer;
transition: filter 0.15s;
}
.cde-migration-confirm-btn:hover {
filter: brightness(1.15);
}
.cde-migration-cancel-btn {
display: inline-flex;
align-items: center;
gap: 8px;
padding: 9px 24px;
border: 1px solid #1a2436;
border-radius: 6px;
background: none;
color: #7d94b8;
font-size: 13px;
cursor: pointer;
transition: color 0.15s, border-color 0.15s;
}
.cde-migration-cancel-btn:hover {
color: #e04444;
border-color: #e04444;
}
/* Progress section */
.cde-migration-progress {
display: flex;
align-items: center;
justify-content: center;
gap: 8px;
padding: 16px;
font-size: 13px;
color: #e2e8f4;
}
.cde-migration-progress i {
color: #4a9eff;
}
.cde-migration-progress-count {
font-weight: 700;
color: #4a9eff;
font-variant-numeric: tabular-nums;
}
.cde-welcome-message {
display: flex;
flex-direction: column;
@@ -4700,3 +4450,277 @@ ol.item-list li.item .item-controls a.item-control:hover {
.cde-welcome-help-btn:hover {
filter: brightness(1.2);
}
i.fas.fa-dice-d10,
i.fa-solid.fa-dice-d10 {
position: relative;
display: inline-flex;
align-items: center;
justify-content: center;
width: 1.4em;
height: 1.4em;
font-size: inherit;
vertical-align: middle;
}
i.fas.fa-dice-d10:before,
i.fa-solid.fa-dice-d10:before {
content: "10";
font-family: "Averia", sans-serif;
font-size: 0.55em;
font-weight: 700;
color: #e2e8f4;
z-index: 1;
position: relative;
line-height: 1;
}
i.fas.fa-dice-d10:after,
i.fa-solid.fa-dice-d10:after {
content: "";
position: absolute;
inset: 0;
background: url('../../../icons/svg/d10-grey.svg') center / contain no-repeat;
opacity: 0.5;
}
a.cde-roll-trigger:hover i.fas.fa-dice-d10:after,
a.cde-roll-trigger:hover i.fa-solid.fa-dice-d10:after,
button:hover i.fas.fa-dice-d10:after,
button:hover i.fa-solid.fa-dice-d10:after {
opacity: 0.7;
}
.cde-roll-cell i.fas.fa-dice-d10 {
width: 20px;
height: 20px;
font-size: 16px;
}
.cde-dice-plate-css {
position: relative;
display: inline-flex;
flex-direction: column;
align-items: center;
justify-content: center;
width: 50px;
height: 70px;
background: #080c14;
border-radius: 8px;
border: 1px solid #1a2436;
color: #e2e8f4;
font-family: "Averia", sans-serif;
font-size: 24px;
font-weight: 700;
margin: 2px;
line-height: 1;
}
.cde-dice-plate-css::before {
content: attr(data-value);
display: block;
line-height: 1;
padding-top: 4px;
}
.cde-dice-plate-css::after {
content: "";
display: block;
width: 32px;
height: 32px;
background-image: url('../../../icons/svg/d10-grey.svg');
background-size: contain;
background-repeat: no-repeat;
background-position: center;
margin-top: 4px;
opacity: 0.85;
}
.cde-dice-plate-css.small {
width: 40px;
height: 40px;
font-size: 14px;
border-radius: 5px;
}
.cde-dice-plate-css.small::before {
position: relative;
z-index: 1;
padding-top: 0;
font-size: inherit;
}
.cde-dice-plate-css.small::after {
position: absolute;
inset: 0;
width: auto;
height: auto;
margin-top: 0;
border-radius: 5px;
}
.cde-dice-plate-css.large {
width: 60px;
height: 84px;
font-size: 30px;
}
.cde-dice-plate-css.large::after {
width: 38px;
height: 38px;
}
.cde-dice-plate-css.wood {
border-color: #41a436;
}
.cde-dice-plate-css.wood::before {
color: #7ad070;
}
.cde-dice-plate-css.fire {
border-color: #cd171a;
}
.cde-dice-plate-css.fire::before {
color: #ed5d60;
}
.cde-dice-plate-css.earth {
border-color: #a85747;
}
.cde-dice-plate-css.earth::before {
color: #cd9488;
}
.cde-dice-plate-css.metal {
border-color: #70706e;
}
.cde-dice-plate-css.metal::before {
color: #a3a3a1;
}
.cde-dice-plate-css.water {
border-color: #009fe2;
}
.cde-dice-plate-css.water::before {
color: #49c9ff;
}
.cde-roll-trigger:hover .cde-dice-plate-css.small,
.cde-die-cell:hover .cde-dice-plate-css.small {
border-color: #cc44ff;
box-shadow: 0 0 8px rgba(204, 68, 255, 0.4);
}
.cde-roll-trigger:hover .cde-dice-plate-css.small::before,
.cde-die-cell:hover .cde-dice-plate-css.small::before {
color: #cc44ff;
}
.cde-roll-trigger:hover .cde-dice-plate-css.small::after,
.cde-die-cell:hover .cde-dice-plate-css.small::after {
opacity: 1;
}
a.cde-roll-trigger:hover i.fas.fa-dice-d10::before,
a.cde-roll-trigger:hover i.fa-solid.fa-dice-d10::before,
button:hover i.fas.fa-dice-d10::before,
button:hover i.fa-solid.fa-dice-d10::before {
color: #cc44ff;
}
.cde-dice-plate.cde-dice-plate-css {
width: 24px;
min-width: 24px;
height: 36px;
font-size: 12px;
margin: 1px;
box-shadow: 0 0 0 1px rgba(38, 56, 83, 0.6), inset 0 0 0 1px rgba(226, 232, 244, 0.15);
}
.cde-dice-plate.cde-dice-plate-css::before {
padding-top: 1px;
font-size: 12px;
}
.cde-dice-plate.cde-dice-plate-css::after {
width: 14px;
height: 14px;
margin-top: 2px;
opacity: 0.9;
filter: brightness(0) saturate(100%);
}
.cde-dice-plate.cde-dice-plate-css[data-value="0"] {
border-color: #70706e;
}
.cde-dice-plate.cde-dice-plate-css[data-value="0"]::before {
color: #afafae;
}
.cde-dice-plate.cde-dice-plate-css[data-value="0"]::after {
filter: brightness(0) saturate(100%) invert(75%) sepia(0%) saturate(100%) hue-rotate(200deg) brightness(100%);
}
.cde-dice-plate.cde-dice-plate-css[data-value="1"] {
border-color: #009fe2;
}
.cde-dice-plate.cde-dice-plate-css[data-value="1"]::before {
color: #62d1ff;
}
.cde-dice-plate.cde-dice-plate-css[data-value="1"]::after {
filter: brightness(0) saturate(100%) invert(75%) sepia(24%) saturate(1200%) hue-rotate(200deg) brightness(100%);
}
.cde-dice-plate.cde-dice-plate-css[data-value="2"] {
border-color: #41a436;
}
.cde-dice-plate.cde-dice-plate-css[data-value="2"]::before {
color: #8cd683;
}
.cde-dice-plate.cde-dice-plate-css[data-value="2"]::after {
filter: brightness(0) saturate(100%) invert(75%) sepia(24%) saturate(1200%) hue-rotate(120deg) brightness(100%);
}
.cde-dice-plate.cde-dice-plate-css[data-value="3"] {
border-color: #a85747;
}
.cde-dice-plate.cde-dice-plate-css[data-value="3"]::before {
color: #d4a49a;
}
.cde-dice-plate.cde-dice-plate-css[data-value="3"]::after {
filter: brightness(0) saturate(100%) invert(75%) sepia(24%) saturate(1200%) hue-rotate(20deg) brightness(100%);
}
.cde-dice-plate.cde-dice-plate-css[data-value="4"] {
border-color: #cd171a;
}
.cde-dice-plate.cde-dice-plate-css[data-value="4"]::before {
color: #ef7476;
}
.cde-dice-plate.cde-dice-plate-css[data-value="4"]::after {
filter: brightness(0) saturate(100%) invert(75%) sepia(24%) saturate(1200%) hue-rotate(0deg) brightness(100%);
}
.cde-dice-plate.cde-dice-plate-css[data-value="5"] {
border-color: #70706e;
}
.cde-dice-plate.cde-dice-plate-css[data-value="5"]::before {
color: #afafae;
}
.cde-dice-plate.cde-dice-plate-css[data-value="5"]::after {
filter: brightness(0) saturate(100%) invert(75%) sepia(0%) saturate(100%) hue-rotate(200deg) brightness(100%);
}
.cde-dice-plate.cde-dice-plate-css[data-value="6"] {
border-color: #009fe2;
}
.cde-dice-plate.cde-dice-plate-css[data-value="6"]::before {
color: #62d1ff;
}
.cde-dice-plate.cde-dice-plate-css[data-value="6"]::after {
filter: brightness(0) saturate(100%) invert(75%) sepia(24%) saturate(1200%) hue-rotate(200deg) brightness(100%);
}
.cde-dice-plate.cde-dice-plate-css[data-value="7"] {
border-color: #41a436;
}
.cde-dice-plate.cde-dice-plate-css[data-value="7"]::before {
color: #8cd683;
}
.cde-dice-plate.cde-dice-plate-css[data-value="7"]::after {
filter: brightness(0) saturate(100%) invert(75%) sepia(24%) saturate(1200%) hue-rotate(120deg) brightness(100%);
}
.cde-dice-plate.cde-dice-plate-css[data-value="8"] {
border-color: #a85747;
}
.cde-dice-plate.cde-dice-plate-css[data-value="8"]::before {
color: #d4a49a;
}
.cde-dice-plate.cde-dice-plate-css[data-value="8"]::after {
filter: brightness(0) saturate(100%) invert(75%) sepia(24%) saturate(1200%) hue-rotate(20deg) brightness(100%);
}
.cde-dice-plate.cde-dice-plate-css[data-value="9"] {
border-color: #cd171a;
}
.cde-dice-plate.cde-dice-plate-css[data-value="9"]::before {
color: #ef7476;
}
.cde-dice-plate.cde-dice-plate-css[data-value="9"]::after {
filter: brightness(0) saturate(100%) invert(75%) sepia(24%) saturate(1200%) hue-rotate(0deg) brightness(100%);
}
.cde-dice-plate.cde-dice-plate-css[data-value="10"] {
border-color: #cd171a;
}
.cde-dice-plate.cde-dice-plate-css[data-value="10"]::before {
color: #ef7476;
font-size: 13px;
}
.cde-dice-plate.cde-dice-plate-css[data-value="10"]::after {
filter: brightness(0) saturate(100%) invert(75%) sepia(24%) saturate(1200%) hue-rotate(0deg) brightness(100%);
}