Correction compendiums
This commit is contained in:
@@ -3951,3 +3951,396 @@ ol.item-list {
|
||||
text-shadow: 0 0 5px fade(@cde-kungfu, 40%);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
/* ============================================================
|
||||
ROUE D'INITIATIVE — CDEWheelApp
|
||||
============================================================ */
|
||||
|
||||
// Wu Xing segment colours (match JS constants)
|
||||
@wu-metal: #b8c4cc;
|
||||
@wu-water: #3a7bd5;
|
||||
@wu-earth: #c8a84b;
|
||||
@wu-fire: #d94f3d;
|
||||
@wu-wood: #4a9b5a;
|
||||
@wu-reference: #2c1f6b;
|
||||
|
||||
.cde-wheel-app {
|
||||
color: @cde-text;
|
||||
background: @cde-bg;
|
||||
font-family: "Averia", "Averia Regular", sans-serif;
|
||||
|
||||
.window-content {
|
||||
padding: 0;
|
||||
overflow: hidden;
|
||||
}
|
||||
}
|
||||
|
||||
/* Two-column layout: SVG wheel left, panel right */
|
||||
.cde-wheel-layout {
|
||||
display: flex;
|
||||
height: 100%;
|
||||
min-height: 520px;
|
||||
}
|
||||
|
||||
/* ---- Left: SVG wheel ---- */
|
||||
.cde-wheel-svg-container {
|
||||
flex: 0 0 480px;
|
||||
width: 480px;
|
||||
padding: 12px 12px 6px;
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
align-items: center;
|
||||
justify-content: center;
|
||||
background: @cde-surface2;
|
||||
border-right: 1px solid @cde-border;
|
||||
|
||||
svg {
|
||||
flex: 1 1 auto;
|
||||
width: 100%;
|
||||
max-width: 456px;
|
||||
max-height: 456px;
|
||||
overflow: visible;
|
||||
}
|
||||
|
||||
.cde-wheel-legend {
|
||||
display: flex;
|
||||
align-items: center;
|
||||
gap: 8px;
|
||||
padding: 4px 0 2px;
|
||||
font-size: 11px;
|
||||
color: rgba(255,255,255,0.55);
|
||||
flex-shrink: 0;
|
||||
}
|
||||
|
||||
.cde-wheel-legend-dot {
|
||||
display: inline-block;
|
||||
width: 10px;
|
||||
height: 10px;
|
||||
border-radius: 50%;
|
||||
flex-shrink: 0;
|
||||
}
|
||||
|
||||
.cde-wheel-segment {
|
||||
stroke: @cde-bg;
|
||||
stroke-width: 1.5;
|
||||
transition: opacity 0.2s;
|
||||
}
|
||||
|
||||
.cde-wheel-cran-label {
|
||||
font-family: "Averia Regular", sans-serif;
|
||||
font-size: 12px;
|
||||
fill: rgba(255,255,255,0.55);
|
||||
text-anchor: middle;
|
||||
dominant-baseline: central;
|
||||
pointer-events: none;
|
||||
user-select: none;
|
||||
}
|
||||
|
||||
// Combatant token circle on the wheel
|
||||
.cde-wheel-fighter-circle {
|
||||
stroke-width: 2;
|
||||
cursor: pointer;
|
||||
transition: r 0.2s, stroke-width 0.2s;
|
||||
|
||||
&:hover {
|
||||
stroke-width: 3;
|
||||
}
|
||||
|
||||
&.is-active {
|
||||
r: 18;
|
||||
stroke-width: 3;
|
||||
filter: drop-shadow(0 0 5px rgba(255, 255, 255, 0.7));
|
||||
}
|
||||
|
||||
&.is-turn {
|
||||
stroke-dasharray: 3 2;
|
||||
animation: cde-spin 4s linear infinite;
|
||||
}
|
||||
}
|
||||
|
||||
.cde-wheel-fighter-initial {
|
||||
font-size: 13px;
|
||||
font-weight: 700;
|
||||
fill: #fff;
|
||||
text-anchor: middle;
|
||||
dominant-baseline: central;
|
||||
pointer-events: none;
|
||||
}
|
||||
}
|
||||
|
||||
/* ---- Right: panel ---- */
|
||||
.cde-wheel-panel {
|
||||
flex: 1 1 auto;
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
overflow: hidden;
|
||||
padding: 0;
|
||||
min-width: 0;
|
||||
}
|
||||
|
||||
.cde-wheel-section-title {
|
||||
padding: 7px 12px 6px;
|
||||
border-bottom: 1px solid @cde-border;
|
||||
background: @cde-surface2;
|
||||
font-size: 10px;
|
||||
font-weight: 700;
|
||||
text-transform: uppercase;
|
||||
letter-spacing: 0.12em;
|
||||
color: @cde-muted;
|
||||
border-left: 3px solid @cde-spell;
|
||||
flex-shrink: 0;
|
||||
|
||||
em {
|
||||
font-style: normal;
|
||||
color: @cde-text;
|
||||
text-transform: none;
|
||||
letter-spacing: 0;
|
||||
font-size: 11px;
|
||||
}
|
||||
}
|
||||
|
||||
/* Combatant list */
|
||||
.cde-wheel-combatants {
|
||||
flex: 0 0 auto;
|
||||
max-height: 130px;
|
||||
overflow-y: auto;
|
||||
border-bottom: 1px solid @cde-border;
|
||||
}
|
||||
|
||||
.cde-wheel-combatant {
|
||||
display: flex;
|
||||
align-items: center;
|
||||
gap: 8px;
|
||||
padding: 6px 12px 6px 9px;
|
||||
cursor: pointer;
|
||||
border-bottom: 1px solid fade(@cde-border, 50%);
|
||||
border-left: 3px solid transparent;
|
||||
transition: background 0.15s, border-color 0.15s;
|
||||
|
||||
&:last-child { border-bottom: none; }
|
||||
|
||||
&:hover {
|
||||
background: @cde-surface;
|
||||
}
|
||||
|
||||
&.cde-wheel-combatant--selected {
|
||||
background: fade(@cde-spell, 10%);
|
||||
border-left-color: @cde-spell;
|
||||
|
||||
.cde-wheel-combatant-name {
|
||||
color: @cde-text;
|
||||
font-weight: 600;
|
||||
}
|
||||
}
|
||||
|
||||
&.cde-wheel-combatant--active {
|
||||
.cde-wheel-active-marker {
|
||||
color: #f0c040;
|
||||
filter: drop-shadow(0 0 3px #f0c040);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
.cde-wheel-combatant-img {
|
||||
width: 30px;
|
||||
height: 30px;
|
||||
border-radius: 50%;
|
||||
object-fit: cover;
|
||||
border: 1.5px solid @cde-border-hi;
|
||||
flex-shrink: 0;
|
||||
}
|
||||
|
||||
.cde-wheel-combatant-name {
|
||||
flex: 1 1 auto;
|
||||
font-size: 13px;
|
||||
overflow: hidden;
|
||||
text-overflow: ellipsis;
|
||||
white-space: nowrap;
|
||||
color: @cde-muted;
|
||||
}
|
||||
|
||||
.cde-wheel-combatant-cran {
|
||||
font-size: 11px;
|
||||
font-weight: 700;
|
||||
font-variant-numeric: tabular-nums;
|
||||
flex-shrink: 0;
|
||||
min-width: 22px;
|
||||
text-align: center;
|
||||
padding: 2px 6px;
|
||||
border-radius: 12px;
|
||||
line-height: 1.3;
|
||||
}
|
||||
|
||||
.cde-wheel-active-marker {
|
||||
font-size: 10px;
|
||||
color: @cde-muted;
|
||||
flex-shrink: 0;
|
||||
}
|
||||
|
||||
/* Action area */
|
||||
.cde-wheel-actions {
|
||||
flex: 1 1 auto;
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
overflow-y: auto;
|
||||
padding: 8px 10px 10px;
|
||||
gap: 6px;
|
||||
|
||||
&.cde-wheel-actions--hint {
|
||||
justify-content: center;
|
||||
align-items: center;
|
||||
}
|
||||
}
|
||||
|
||||
.cde-wheel-hint {
|
||||
color: @cde-muted;
|
||||
font-size: 12px;
|
||||
text-align: center;
|
||||
font-style: italic;
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
align-items: center;
|
||||
gap: 8px;
|
||||
|
||||
i {
|
||||
font-size: 22px;
|
||||
opacity: 0.4;
|
||||
}
|
||||
}
|
||||
|
||||
.cde-wheel-action-grid {
|
||||
display: grid;
|
||||
grid-template-columns: 1fr 1fr;
|
||||
gap: 5px;
|
||||
}
|
||||
|
||||
.cde-wheel-action-btn {
|
||||
display: flex;
|
||||
align-items: center;
|
||||
justify-content: space-between;
|
||||
gap: 4px;
|
||||
background: @cde-surface;
|
||||
border: 1px solid @cde-border-hi;
|
||||
border-radius: @cde-radius-sm;
|
||||
color: @cde-muted;
|
||||
font-size: 11px;
|
||||
padding: 5px 7px;
|
||||
cursor: pointer;
|
||||
text-align: left;
|
||||
transition: background 0.15s, border-color 0.15s, color 0.15s, box-shadow 0.15s;
|
||||
font-family: inherit;
|
||||
|
||||
&:hover {
|
||||
color: @cde-text;
|
||||
background: @cde-border;
|
||||
border-color: @cde-border-hi;
|
||||
}
|
||||
|
||||
.cde-wheel-action-name {
|
||||
flex: 1 1 auto;
|
||||
overflow: hidden;
|
||||
text-overflow: ellipsis;
|
||||
white-space: nowrap;
|
||||
}
|
||||
|
||||
.cde-wheel-action-cost {
|
||||
flex-shrink: 0;
|
||||
font-weight: 700;
|
||||
font-size: 10px;
|
||||
padding: 1px 5px;
|
||||
border-radius: 10px;
|
||||
background: @cde-border-hi;
|
||||
color: @cde-muted;
|
||||
line-height: 1.4;
|
||||
}
|
||||
|
||||
&[data-cost="1"] {
|
||||
&:hover { box-shadow: 0 0 6px fade(@cde-spell, 22%); }
|
||||
.cde-wheel-action-cost { background: #1a3d6a; color: #6aadff; }
|
||||
}
|
||||
&[data-cost="2"] {
|
||||
&:hover { box-shadow: 0 0 6px fade(#d4a050, 25%); }
|
||||
.cde-wheel-action-cost { background: #4a3200; color: #d4a050; }
|
||||
}
|
||||
&[data-cost="3"] {
|
||||
&:hover { box-shadow: 0 0 6px fade(#e06030, 28%); }
|
||||
.cde-wheel-action-cost { background: #4a1800; color: #e07840; }
|
||||
}
|
||||
&[data-cost="6"] {
|
||||
border-color: fade(#cc2040, 40%);
|
||||
&:hover { box-shadow: 0 0 6px fade(#cc2040, 35%); }
|
||||
.cde-wheel-action-cost { background: #4a0814; color: #e03050; }
|
||||
}
|
||||
}
|
||||
|
||||
/* Special action buttons */
|
||||
.cde-wheel-special-actions {
|
||||
display: flex;
|
||||
gap: 6px;
|
||||
margin-top: 2px;
|
||||
}
|
||||
|
||||
.cde-wheel-btn-roll,
|
||||
.cde-wheel-btn-surprise {
|
||||
flex: 1 1 0;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
justify-content: center;
|
||||
gap: 6px;
|
||||
border-radius: @cde-radius-sm;
|
||||
font-size: 11px;
|
||||
font-weight: 600;
|
||||
padding: 7px 8px;
|
||||
cursor: pointer;
|
||||
font-family: inherit;
|
||||
transition: background 0.15s, box-shadow 0.15s;
|
||||
border: 1px solid;
|
||||
}
|
||||
|
||||
.cde-wheel-btn-roll {
|
||||
background: fade(#c08a00, 14%);
|
||||
border-color: fade(#c08a00, 50%);
|
||||
color: #e0b030;
|
||||
|
||||
&:hover {
|
||||
background: fade(#c08a00, 26%);
|
||||
box-shadow: 0 0 8px fade(#c08a00, 40%);
|
||||
}
|
||||
}
|
||||
|
||||
.cde-wheel-btn-surprise {
|
||||
background: fade(@cde-kungfu, 12%);
|
||||
border-color: fade(@cde-kungfu, 45%);
|
||||
color: @cde-kungfu;
|
||||
|
||||
&:hover {
|
||||
background: fade(@cde-kungfu, 24%);
|
||||
box-shadow: 0 0 8px fade(@cde-kungfu, 35%);
|
||||
}
|
||||
}
|
||||
|
||||
/* No-combat empty state */
|
||||
.cde-wheel-no-combat {
|
||||
flex: 1 1 auto;
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
align-items: center;
|
||||
justify-content: center;
|
||||
color: @cde-muted;
|
||||
gap: 8px;
|
||||
padding: 20px;
|
||||
text-align: center;
|
||||
font-size: 12px;
|
||||
|
||||
i {
|
||||
font-size: 28px;
|
||||
opacity: 0.4;
|
||||
}
|
||||
}
|
||||
|
||||
/* Spin animation for active-turn token */
|
||||
@keyframes cde-spin {
|
||||
from { transform-origin: var(--fx) var(--fy); transform: rotate(0deg); }
|
||||
to { transform-origin: var(--fx) var(--fy); transform: rotate(360deg); }
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user