Add spells rolls and enhance CSS styling

This commit is contained in:
2026-01-12 10:45:20 +01:00
parent e75824cd20
commit 0bc6b43ffe
29 changed files with 2428 additions and 878 deletions
+738 -38
View File
@@ -2669,44 +2669,6 @@ i.prismrpg {
.prismrpg .vulnerability-content input[type="checkbox"]:checked::after {
color: rgba(0, 0, 0, 0.1);
}
.prismrpg.fortune img {
border: 0px;
}
.prismrpg.fortune .intro-chat {
border-radius: 20px;
display: flex;
flex-direction: row;
}
.prismrpg.fortune .intro-chat .intro-img {
padding: 5px;
width: 80px;
align-self: center;
}
.prismrpg.fortune .intro-chat .intro-right {
display: flex;
flex-direction: column;
}
.prismrpg.fortune .intro-chat .intro-right .introText {
font-family: var(--font-secondary);
font-size: calc(var(--font-size-standard) * 1.2);
width: 210px;
text-align: center;
}
.prismrpg.fortune .button.control,
.prismrpg.fortune .fortune-accepted {
display: flex;
justify-content: center;
align-items: center;
font-size: calc(var(--font-size-standard) * 1.3);
}
.prismrpg.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.2);
}
.prismrpg .equipment-content {
font-family: var(--font-primary);
font-size: calc(var(--font-size-standard) * 1);
@@ -3700,6 +3662,446 @@ i.prismrpg {
gap: 1rem;
align-items: flex-start;
}
.chat-log .message-content .prismrpg-chat-card {
font-family: var(--font-primary);
border-radius: 6px;
overflow: hidden;
background: linear-gradient(135deg, rgba(0, 0, 0, 0.05) 0%, rgba(0, 0, 0, 0.02) 100%);
border: 1px solid rgba(0, 0, 0, 0.2);
margin: 2px 0;
}
.chat-log .message-content .prismrpg-chat-card .chat-header {
display: flex;
gap: 8px;
padding: 6px 8px;
background: linear-gradient(135deg, #2c2c2c 0%, #1a1a1a 100%);
border-bottom: 1px solid #444;
}
.chat-log .message-content .prismrpg-chat-card .chat-header .chat-portrait {
flex-shrink: 0;
width: 36px;
height: 36px;
border-radius: 50%;
overflow: hidden;
border: 2px solid #666;
box-shadow: 0 1px 4px rgba(0, 0, 0, 0.4);
}
.chat-log .message-content .prismrpg-chat-card .chat-header .chat-portrait img {
width: 100%;
height: 100%;
object-fit: cover;
}
.chat-log .message-content .prismrpg-chat-card .chat-header .chat-title {
flex: 1;
display: flex;
flex-direction: column;
justify-content: center;
gap: 2px;
}
.chat-log .message-content .prismrpg-chat-card .chat-header .chat-title .actor-name {
font-weight: bold;
font-size: 0.95em;
color: #e0e0e0;
text-shadow: 1px 1px 2px rgba(0, 0, 0, 0.5);
line-height: 1.1;
}
.chat-log .message-content .prismrpg-chat-card .chat-header .chat-title .roll-name {
font-size: 0.8em;
color: #aaa;
line-height: 1.1;
}
.chat-log .message-content .prismrpg-chat-card .chat-header .chat-title .roll-type-badge {
display: inline-block;
padding: 1px 6px;
border-radius: 10px;
font-size: 0.7em;
font-weight: bold;
text-transform: uppercase;
margin-top: 2px;
width: fit-content;
}
.chat-log .message-content .prismrpg-chat-card .chat-header .chat-title .roll-type-badge.attack {
background: linear-gradient(135deg, #c41e3a 0%, #8b0000 100%);
color: white;
box-shadow: 0 1px 2px rgba(196, 30, 58, 0.4);
}
.chat-log .message-content .prismrpg-chat-card .chat-header .chat-title .bad-result {
color: #ff6b6b;
font-size: 0.75em;
margin-top: 1px;
}
.chat-log .message-content .prismrpg-chat-card .chat-content {
padding: 6px 8px;
display: flex;
flex-direction: column;
gap: 6px;
}
.chat-log .message-content .prismrpg-chat-card .chat-content .weapon-info-card,
.chat-log .message-content .prismrpg-chat-card .chat-content .spell-info-card {
background: rgba(255, 255, 255, 0.05);
border: 1px solid rgba(255, 255, 255, 0.1);
border-radius: 4px;
padding: 6px;
}
.chat-log .message-content .prismrpg-chat-card .chat-content .weapon-info-card .weapon-header,
.chat-log .message-content .prismrpg-chat-card .chat-content .spell-info-card .weapon-header,
.chat-log .message-content .prismrpg-chat-card .chat-content .weapon-info-card .spell-header,
.chat-log .message-content .prismrpg-chat-card .chat-content .spell-info-card .spell-header {
display: flex;
align-items: center;
gap: 6px;
margin-bottom: 4px;
padding-bottom: 4px;
border-bottom: 1px solid rgba(255, 255, 255, 0.1);
}
.chat-log .message-content .prismrpg-chat-card .chat-content .weapon-info-card .weapon-header .weapon-name,
.chat-log .message-content .prismrpg-chat-card .chat-content .spell-info-card .weapon-header .weapon-name,
.chat-log .message-content .prismrpg-chat-card .chat-content .weapon-info-card .spell-header .weapon-name,
.chat-log .message-content .prismrpg-chat-card .chat-content .spell-info-card .spell-header .weapon-name,
.chat-log .message-content .prismrpg-chat-card .chat-content .weapon-info-card .weapon-header .spell-name,
.chat-log .message-content .prismrpg-chat-card .chat-content .spell-info-card .weapon-header .spell-name,
.chat-log .message-content .prismrpg-chat-card .chat-content .weapon-info-card .spell-header .spell-name,
.chat-log .message-content .prismrpg-chat-card .chat-content .spell-info-card .spell-header .spell-name {
font-size: 0.95em;
color: #d4af37;
}
.chat-log .message-content .prismrpg-chat-card .chat-content .weapon-info-card .weapon-header .badge,
.chat-log .message-content .prismrpg-chat-card .chat-content .spell-info-card .weapon-header .badge,
.chat-log .message-content .prismrpg-chat-card .chat-content .weapon-info-card .spell-header .badge,
.chat-log .message-content .prismrpg-chat-card .chat-content .spell-info-card .spell-header .badge {
padding: 1px 4px;
border-radius: 3px;
font-size: 0.65em;
font-weight: bold;
text-transform: uppercase;
}
.chat-log .message-content .prismrpg-chat-card .chat-content .weapon-info-card .weapon-header .badge.implement,
.chat-log .message-content .prismrpg-chat-card .chat-content .spell-info-card .weapon-header .badge.implement,
.chat-log .message-content .prismrpg-chat-card .chat-content .weapon-info-card .spell-header .badge.implement,
.chat-log .message-content .prismrpg-chat-card .chat-content .spell-info-card .spell-header .badge.implement {
background: #4a5cf7;
color: white;
}
.chat-log .message-content .prismrpg-chat-card .chat-content .weapon-info-card .weapon-header .badge.upcast,
.chat-log .message-content .prismrpg-chat-card .chat-content .spell-info-card .weapon-header .badge.upcast,
.chat-log .message-content .prismrpg-chat-card .chat-content .weapon-info-card .spell-header .badge.upcast,
.chat-log .message-content .prismrpg-chat-card .chat-content .spell-info-card .spell-header .badge.upcast {
background: #9b59b6;
color: white;
}
.chat-log .message-content .prismrpg-chat-card .chat-content .weapon-info-card .weapon-header .attribute-used,
.chat-log .message-content .prismrpg-chat-card .chat-content .spell-info-card .weapon-header .attribute-used,
.chat-log .message-content .prismrpg-chat-card .chat-content .weapon-info-card .spell-header .attribute-used,
.chat-log .message-content .prismrpg-chat-card .chat-content .spell-info-card .spell-header .attribute-used {
font-size: 0.75em;
color: #999;
font-style: italic;
}
.chat-log .message-content .prismrpg-chat-card .chat-content .weapon-info-card .weapon-stats,
.chat-log .message-content .prismrpg-chat-card .chat-content .spell-info-card .weapon-stats,
.chat-log .message-content .prismrpg-chat-card .chat-content .weapon-info-card .spell-stats,
.chat-log .message-content .prismrpg-chat-card .chat-content .spell-info-card .spell-stats {
display: flex;
flex-wrap: wrap;
gap: 4px;
}
.chat-log .message-content .prismrpg-chat-card .chat-content .weapon-info-card .weapon-stats .stat-item,
.chat-log .message-content .prismrpg-chat-card .chat-content .spell-info-card .weapon-stats .stat-item,
.chat-log .message-content .prismrpg-chat-card .chat-content .weapon-info-card .spell-stats .stat-item,
.chat-log .message-content .prismrpg-chat-card .chat-content .spell-info-card .spell-stats .stat-item {
display: flex;
align-items: center;
gap: 3px;
padding: 2px 6px;
background: rgba(0, 0, 0, 0.2);
border-radius: 3px;
font-size: 0.75em;
}
.chat-log .message-content .prismrpg-chat-card .chat-content .weapon-info-card .weapon-stats .stat-item i,
.chat-log .message-content .prismrpg-chat-card .chat-content .spell-info-card .weapon-stats .stat-item i,
.chat-log .message-content .prismrpg-chat-card .chat-content .weapon-info-card .spell-stats .stat-item i,
.chat-log .message-content .prismrpg-chat-card .chat-content .spell-info-card .spell-stats .stat-item i {
color: #888;
font-size: 0.85em;
}
.chat-log .message-content .prismrpg-chat-card .chat-content .weapon-info-card .weapon-stats .stat-item.apc,
.chat-log .message-content .prismrpg-chat-card .chat-content .spell-info-card .weapon-stats .stat-item.apc,
.chat-log .message-content .prismrpg-chat-card .chat-content .weapon-info-card .spell-stats .stat-item.apc,
.chat-log .message-content .prismrpg-chat-card .chat-content .spell-info-card .spell-stats .stat-item.apc {
background: rgba(255, 193, 7, 0.2);
border: 1px solid rgba(255, 193, 7, 0.4);
}
.chat-log .message-content .prismrpg-chat-card .chat-content .weapon-info-card .weapon-stats .stat-item.apc i,
.chat-log .message-content .prismrpg-chat-card .chat-content .spell-info-card .weapon-stats .stat-item.apc i,
.chat-log .message-content .prismrpg-chat-card .chat-content .weapon-info-card .spell-stats .stat-item.apc i,
.chat-log .message-content .prismrpg-chat-card .chat-content .spell-info-card .spell-stats .stat-item.apc i {
color: #ffc107;
}
.chat-log .message-content .prismrpg-chat-card .chat-content .weapon-info-card .weapon-stats .stat-item.damage,
.chat-log .message-content .prismrpg-chat-card .chat-content .spell-info-card .weapon-stats .stat-item.damage,
.chat-log .message-content .prismrpg-chat-card .chat-content .weapon-info-card .spell-stats .stat-item.damage,
.chat-log .message-content .prismrpg-chat-card .chat-content .spell-info-card .spell-stats .stat-item.damage {
background: rgba(244, 67, 54, 0.2);
border: 1px solid rgba(244, 67, 54, 0.4);
}
.chat-log .message-content .prismrpg-chat-card .chat-content .weapon-info-card .weapon-stats .stat-item.damage i,
.chat-log .message-content .prismrpg-chat-card .chat-content .spell-info-card .weapon-stats .stat-item.damage i,
.chat-log .message-content .prismrpg-chat-card .chat-content .weapon-info-card .spell-stats .stat-item.damage i,
.chat-log .message-content .prismrpg-chat-card .chat-content .spell-info-card .spell-stats .stat-item.damage i {
color: #f44336;
}
.chat-log .message-content .prismrpg-chat-card .chat-content .weapon-info-card .weapon-stats .stat-item.range,
.chat-log .message-content .prismrpg-chat-card .chat-content .spell-info-card .weapon-stats .stat-item.range,
.chat-log .message-content .prismrpg-chat-card .chat-content .weapon-info-card .spell-stats .stat-item.range,
.chat-log .message-content .prismrpg-chat-card .chat-content .spell-info-card .spell-stats .stat-item.range {
background: rgba(76, 175, 80, 0.2);
border: 1px solid rgba(76, 175, 80, 0.4);
}
.chat-log .message-content .prismrpg-chat-card .chat-content .weapon-info-card .weapon-stats .stat-item.range i,
.chat-log .message-content .prismrpg-chat-card .chat-content .spell-info-card .weapon-stats .stat-item.range i,
.chat-log .message-content .prismrpg-chat-card .chat-content .weapon-info-card .spell-stats .stat-item.range i,
.chat-log .message-content .prismrpg-chat-card .chat-content .spell-info-card .spell-stats .stat-item.range i {
color: #4caf50;
}
.chat-log .message-content .prismrpg-chat-card .chat-content .weapon-info-card .weapon-stats .stat-item.reload,
.chat-log .message-content .prismrpg-chat-card .chat-content .spell-info-card .weapon-stats .stat-item.reload,
.chat-log .message-content .prismrpg-chat-card .chat-content .weapon-info-card .spell-stats .stat-item.reload,
.chat-log .message-content .prismrpg-chat-card .chat-content .spell-info-card .spell-stats .stat-item.reload {
background: rgba(255, 152, 0, 0.2);
border: 1px solid rgba(255, 152, 0, 0.4);
}
.chat-log .message-content .prismrpg-chat-card .chat-content .weapon-info-card .weapon-stats .stat-item.reload i,
.chat-log .message-content .prismrpg-chat-card .chat-content .spell-info-card .weapon-stats .stat-item.reload i,
.chat-log .message-content .prismrpg-chat-card .chat-content .weapon-info-card .spell-stats .stat-item.reload i,
.chat-log .message-content .prismrpg-chat-card .chat-content .spell-info-card .spell-stats .stat-item.reload i {
color: #ff9800;
}
.chat-log .message-content .prismrpg-chat-card .chat-content .weapon-info-card .weapon-stats .stat-item.mana,
.chat-log .message-content .prismrpg-chat-card .chat-content .spell-info-card .weapon-stats .stat-item.mana,
.chat-log .message-content .prismrpg-chat-card .chat-content .weapon-info-card .spell-stats .stat-item.mana,
.chat-log .message-content .prismrpg-chat-card .chat-content .spell-info-card .spell-stats .stat-item.mana {
background: rgba(33, 150, 243, 0.2);
border: 1px solid rgba(33, 150, 243, 0.4);
}
.chat-log .message-content .prismrpg-chat-card .chat-content .weapon-info-card .weapon-stats .stat-item.mana i,
.chat-log .message-content .prismrpg-chat-card .chat-content .spell-info-card .weapon-stats .stat-item.mana i,
.chat-log .message-content .prismrpg-chat-card .chat-content .weapon-info-card .spell-stats .stat-item.mana i,
.chat-log .message-content .prismrpg-chat-card .chat-content .spell-info-card .spell-stats .stat-item.mana i {
color: #2196f3;
}
.chat-log .message-content .prismrpg-chat-card .chat-content .weapon-info-card .weapon-stats .stat-item.upkeep,
.chat-log .message-content .prismrpg-chat-card .chat-content .spell-info-card .weapon-stats .stat-item.upkeep,
.chat-log .message-content .prismrpg-chat-card .chat-content .weapon-info-card .spell-stats .stat-item.upkeep,
.chat-log .message-content .prismrpg-chat-card .chat-content .spell-info-card .spell-stats .stat-item.upkeep {
background: rgba(156, 39, 176, 0.2);
border: 1px solid rgba(156, 39, 176, 0.4);
}
.chat-log .message-content .prismrpg-chat-card .chat-content .weapon-info-card .weapon-stats .stat-item.upkeep i,
.chat-log .message-content .prismrpg-chat-card .chat-content .spell-info-card .weapon-stats .stat-item.upkeep i,
.chat-log .message-content .prismrpg-chat-card .chat-content .weapon-info-card .spell-stats .stat-item.upkeep i,
.chat-log .message-content .prismrpg-chat-card .chat-content .spell-info-card .spell-stats .stat-item.upkeep i {
color: #9c27b0;
}
.chat-log .message-content .prismrpg-chat-card .chat-content .weapon-info-card .weapon-stats .stat-item.characteristic,
.chat-log .message-content .prismrpg-chat-card .chat-content .spell-info-card .weapon-stats .stat-item.characteristic,
.chat-log .message-content .prismrpg-chat-card .chat-content .weapon-info-card .spell-stats .stat-item.characteristic,
.chat-log .message-content .prismrpg-chat-card .chat-content .spell-info-card .spell-stats .stat-item.characteristic {
background: rgba(103, 58, 183, 0.2);
border: 1px solid rgba(103, 58, 183, 0.4);
}
.chat-log .message-content .prismrpg-chat-card .chat-content .weapon-info-card .weapon-stats .stat-item.characteristic i,
.chat-log .message-content .prismrpg-chat-card .chat-content .spell-info-card .weapon-stats .stat-item.characteristic i,
.chat-log .message-content .prismrpg-chat-card .chat-content .weapon-info-card .spell-stats .stat-item.characteristic i,
.chat-log .message-content .prismrpg-chat-card .chat-content .spell-info-card .spell-stats .stat-item.characteristic i {
color: #673ab7;
}
.chat-log .message-content .prismrpg-chat-card .chat-content .special-badge {
display: inline-block;
padding: 2px 6px;
background: linear-gradient(135deg, #ff6b6b 0%, #c92a2a 100%);
color: white;
border-radius: 3px;
font-size: 0.75em;
font-weight: bold;
width: fit-content;
box-shadow: 0 1px 2px rgba(255, 107, 107, 0.4);
}
.chat-log .message-content .prismrpg-chat-card .chat-content .aiming-info {
display: flex;
align-items: center;
gap: 4px;
padding: 3px 6px;
background: rgba(76, 175, 80, 0.1);
border-left: 2px solid #4caf50;
border-radius: 3px;
font-size: 0.8em;
}
.chat-log .message-content .prismrpg-chat-card .chat-content .aiming-info i {
color: #4caf50;
}
.chat-log .message-content .prismrpg-chat-card .chat-content .formula-display {
display: flex;
align-items: center;
gap: 6px;
padding: 4px 8px;
background: rgba(0, 0, 0, 0.3);
border-radius: 3px;
font-family: 'Courier New', monospace;
font-size: 0.85em;
border: 1px dashed rgba(255, 255, 255, 0.2);
}
.chat-log .message-content .prismrpg-chat-card .chat-content .formula-display i {
color: #888;
}
.chat-log .message-content .prismrpg-chat-card .chat-content .modifier-info {
display: flex;
gap: 8px;
padding: 3px 6px;
background: rgba(255, 255, 255, 0.05);
border-radius: 3px;
font-size: 0.75em;
}
.chat-log .message-content .prismrpg-chat-card .chat-content .modifier-info span {
color: #aaa;
}
.chat-log .message-content .prismrpg-chat-card .chat-content .dice-breakdown {
display: flex;
align-items: center;
gap: 4px;
padding: 2px 6px;
background: rgba(255, 255, 255, 0.05);
border-radius: 3px;
font-size: 0.8em;
}
.chat-log .message-content .prismrpg-chat-card .chat-content .dice-breakdown i {
color: #888;
}
.chat-log .message-content .prismrpg-chat-card .chat-content .roll-damage-button {
padding: 4px 10px;
background: linear-gradient(135deg, #c41e3a 0%, #8b0000 100%);
color: white;
border: none;
border-radius: 4px;
font-weight: bold;
font-size: 0.85em;
cursor: pointer;
display: flex;
align-items: center;
gap: 6px;
justify-content: center;
transition: all 0.2s;
box-shadow: 0 1px 3px rgba(196, 30, 58, 0.4);
margin-top: 4px;
}
.chat-log .message-content .prismrpg-chat-card .chat-content .roll-damage-button:hover {
transform: translateY(-1px);
box-shadow: 0 2px 4px rgba(196, 30, 58, 0.6);
}
.chat-log .message-content .prismrpg-chat-card .chat-content .roll-damage-button i {
font-size: 1em;
}
.chat-log .message-content .prismrpg-chat-card .roll-result {
padding: 8px;
background: linear-gradient(135deg, rgba(212, 175, 55, 0.2) 0%, rgba(212, 175, 55, 0.1) 100%);
border-top: 1px solid rgba(212, 175, 55, 0.5);
}
.chat-log .message-content .prismrpg-chat-card .roll-result .result-total {
display: flex;
align-items: center;
justify-content: space-between;
gap: 10px;
}
.chat-log .message-content .prismrpg-chat-card .roll-result .result-total .total-label {
font-size: 0.85em;
color: #aaa;
text-transform: uppercase;
letter-spacing: 0.5px;
}
.chat-log .message-content .prismrpg-chat-card .roll-result .result-total .total-value {
font-size: 1.8em;
font-weight: bold;
color: #d4af37;
text-shadow: 0 1px 3px rgba(212, 175, 55, 0.5);
line-height: 1;
}
.chat-log .message-content .prismrpg-chat-card .roll-result .d30-result {
margin-top: 4px;
padding: 3px 6px;
background: rgba(0, 0, 0, 0.2);
border-radius: 3px;
font-size: 0.8em;
text-align: center;
}
.chat-log .message-content .prismrpg-chat-card .roll-result .d30-result i {
color: #d4af37;
margin-right: 4px;
}
.chat-log .message-content .prismrpg-chat-card .result-badge {
padding: 6px;
text-align: center;
font-size: 0.9em;
font-weight: bold;
border-top: 1px solid;
}
.chat-log .message-content .prismrpg-chat-card .result-badge.success {
background: linear-gradient(135deg, rgba(76, 175, 80, 0.3) 0%, rgba(76, 175, 80, 0.1) 100%);
border-color: #4caf50;
color: #4caf50;
}
.chat-log .message-content .prismrpg-chat-card .result-badge.failure {
background: linear-gradient(135deg, rgba(244, 67, 54, 0.3) 0%, rgba(244, 67, 54, 0.1) 100%);
border-color: #f44336;
color: #f44336;
}
.chat-log .message-content .prismrpg-chat-card .result-badge i {
margin-right: 6px;
font-size: 1em;
}
.chat-log .message-content .prismrpg-chat-card .damage-info {
padding: 6px;
background: rgba(255, 255, 255, 0.05);
border-radius: 3px;
font-size: 0.8em;
color: #aaa;
}
.chat-log .message-content.fortune img {
border: 0px;
}
.chat-log .message-content.fortune .intro-chat {
border-radius: 20px;
display: flex;
flex-direction: row;
}
.chat-log .message-content.fortune .intro-chat .intro-img {
padding: 5px;
width: 80px;
align-self: center;
}
.chat-log .message-content.fortune .intro-chat .intro-right {
display: flex;
flex-direction: column;
}
.chat-log .message-content.fortune .intro-chat .intro-right .introText {
font-family: var(--font-secondary);
font-size: calc(var(--font-size-standard) * 1.2);
width: 210px;
text-align: center;
}
.chat-log .message-content.fortune .button.control,
.chat-log .message-content.fortune .fortune-accepted {
display: flex;
justify-content: center;
align-items: center;
font-size: calc(var(--font-size-standard) * 1.3);
}
.chat-log .message-content.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.2);
}
.application.dialog.prismrpg {
color: var(--color-dark-1);
}
@@ -3724,6 +4126,25 @@ i.prismrpg {
border-radius: 4px;
padding: 0.5rem;
}
.prismrpg-roll-dialog .dialog-weapon-options {
margin-top: 8px;
}
.prismrpg-roll-dialog .dialog-weapon-options .dialog-save {
margin: 4px 0;
}
.prismrpg-roll-dialog .dialog-weapon-options .dialog-save label {
display: flex;
align-items: center;
cursor: pointer;
}
.prismrpg-roll-dialog .dialog-weapon-options .dialog-save label input[type="checkbox"] {
margin-right: 8px;
cursor: pointer;
}
.prismrpg-roll-dialog .dialog-weapon-options .dialog-save select {
margin-left: 8px;
min-width: 10rem;
}
.prismrpg-range-defense-dialog {
width: 18rem;
}
@@ -3847,6 +4268,285 @@ i.prismrpg {
font-size: calc(var(--font-size-standard) * 1);
text-shadow: 0 0 10px var(--color-shadow-primary);
}
.dice-roll .damage-roll-button {
margin-top: 0.5em;
margin-bottom: 0.25em;
}
.dice-roll .damage-roll-button .roll-damage-button {
background: linear-gradient(135deg, #8b0000 0%, #dc143c 100%);
color: white;
border: 1px solid #6b0000;
border-radius: 3px;
padding: 4px 10px;
font-weight: 600;
cursor: pointer;
font-size: 0.85em;
box-shadow: 0 1px 3px rgba(0, 0, 0, 0.2);
transition: all 0.2s ease;
}
.dice-roll .damage-roll-button .roll-damage-button:hover {
background: linear-gradient(135deg, #a00000 0%, #ff1744 100%);
box-shadow: 0 2px 4px rgba(0, 0, 0, 0.3);
transform: translateY(-1px);
}
.dice-roll .damage-roll-button .roll-damage-button i {
margin-right: 4px;
font-size: 0.9em;
}
.prismrpg-roll-dialog-modern {
font-family: var(--font-primary);
}
.prismrpg-roll-dialog-modern .dialog-header {
background: linear-gradient(135deg, rgba(33, 33, 33, 0.95) 0%, rgba(66, 66, 66, 0.95) 100%);
border-bottom: 2px solid #d4af37;
padding: 8px 10px;
margin: -8px -8px 8px -8px;
border-radius: 4px 4px 0 0;
}
.prismrpg-roll-dialog-modern .dialog-header .character-info {
display: flex;
flex-direction: column;
gap: 4px;
}
.prismrpg-roll-dialog-modern .dialog-header .character-info .character-name {
font-size: 1em;
font-weight: bold;
color: #d4af37;
text-shadow: 0 1px 2px rgba(0, 0, 0, 0.5);
}
.prismrpg-roll-dialog-modern .dialog-header .character-info .item-name {
display: flex;
align-items: center;
gap: 4px;
font-size: 0.9em;
color: #e0e0e0;
}
.prismrpg-roll-dialog-modern .dialog-header .character-info .item-name i {
color: #d4af37;
font-size: 0.85em;
}
.prismrpg-roll-dialog-modern .dialog-header .character-info .item-name.weapon i {
color: #f44336;
}
.prismrpg-roll-dialog-modern .dialog-header .character-info .item-name.spell i {
color: #9c27b0;
}
.prismrpg-roll-dialog-modern .dialog-content {
display: flex;
flex-direction: column;
gap: 8px;
}
.prismrpg-roll-dialog-modern .option-section {
background: rgba(0, 0, 0, 0.1);
border: 1px solid rgba(0, 0, 0, 0.2);
border-radius: 4px;
padding: 6px 8px;
}
.prismrpg-roll-dialog-modern .option-section.weapon-section {
border-left: 3px solid #f44336;
}
.prismrpg-roll-dialog-modern .option-section.spell-section {
border-left: 3px solid #9c27b0;
}
.prismrpg-roll-dialog-modern .option-section .section-title {
display: flex;
align-items: center;
gap: 4px;
font-weight: bold;
font-size: 0.9em;
color: var(--color-dark-1);
margin-bottom: 6px;
padding-bottom: 4px;
border-bottom: 1px solid rgba(0, 0, 0, 0.15);
}
.prismrpg-roll-dialog-modern .option-section .section-title i {
color: #d4af37;
font-size: 0.85em;
}
.prismrpg-roll-dialog-modern .info-display {
display: flex;
align-items: center;
gap: 4px;
padding: 4px 6px;
background: rgba(0, 0, 0, 0.15);
border-radius: 3px;
margin-bottom: 6px;
font-size: 0.8em;
color: #666;
}
.prismrpg-roll-dialog-modern .info-display i {
color: #4caf50;
font-size: 0.85em;
}
.prismrpg-roll-dialog-modern .info-display .info-text {
flex: 1;
}
.prismrpg-roll-dialog-modern .spell-info-display {
display: flex;
flex-wrap: wrap;
gap: 4px;
margin-bottom: 6px;
}
.prismrpg-roll-dialog-modern .spell-info-display .info-badge {
display: flex;
align-items: center;
gap: 3px;
padding: 3px 6px;
border-radius: 3px;
font-size: 0.75em;
font-weight: 500;
}
.prismrpg-roll-dialog-modern .spell-info-display .info-badge i {
font-size: 0.85em;
}
.prismrpg-roll-dialog-modern .spell-info-display .info-badge.characteristic {
background: rgba(103, 58, 183, 0.2);
border: 1px solid rgba(103, 58, 183, 0.4);
color: #673ab7;
}
.prismrpg-roll-dialog-modern .spell-info-display .info-badge.characteristic i {
color: #673ab7;
}
.prismrpg-roll-dialog-modern .spell-info-display .info-badge.mana {
background: rgba(33, 150, 243, 0.2);
border: 1px solid rgba(33, 150, 243, 0.4);
color: #2196f3;
}
.prismrpg-roll-dialog-modern .spell-info-display .info-badge.mana i {
color: #2196f3;
}
.prismrpg-roll-dialog-modern .spell-info-display .info-badge.apc {
background: rgba(255, 193, 7, 0.2);
border: 1px solid rgba(255, 193, 7, 0.4);
color: #ffc107;
}
.prismrpg-roll-dialog-modern .spell-info-display .info-badge.apc i {
color: #ffc107;
}
.prismrpg-roll-dialog-modern .spell-info-display .info-badge.upkeep {
background: rgba(156, 39, 176, 0.2);
border: 1px solid rgba(156, 39, 176, 0.4);
color: #9c27b0;
}
.prismrpg-roll-dialog-modern .spell-info-display .info-badge.upkeep i {
color: #9c27b0;
}
.prismrpg-roll-dialog-modern .option-row {
display: flex;
align-items: center;
gap: 6px;
margin-bottom: 4px;
}
.prismrpg-roll-dialog-modern .option-row:last-child {
margin-bottom: 0;
}
.prismrpg-roll-dialog-modern .option-row label {
font-size: 0.85em;
font-weight: 500;
color: var(--color-dark-2);
min-width: 90px;
}
.prismrpg-roll-dialog-modern .option-row select {
flex: 1;
}
.prismrpg-roll-dialog-modern .styled-select {
background: rgba(255, 255, 255, 0.9);
border: 1px solid rgba(0, 0, 0, 0.2);
border-radius: 3px;
padding: 4px 8px;
font-size: 0.85em;
color: var(--color-dark-1);
cursor: pointer;
transition: all 0.2s ease;
}
.prismrpg-roll-dialog-modern .styled-select:hover {
border-color: #d4af37;
box-shadow: 0 0 4px rgba(212, 175, 55, 0.3);
}
.prismrpg-roll-dialog-modern .styled-select:focus {
outline: none;
border-color: #d4af37;
box-shadow: 0 0 6px rgba(212, 175, 55, 0.5);
}
.prismrpg-roll-dialog-modern .styled-select.advantage-select,
.prismrpg-roll-dialog-modern .styled-select.modifier-select {
text-align: center;
font-weight: 500;
}
.prismrpg-roll-dialog-modern .checkbox-group {
display: flex;
flex-direction: column;
gap: 3px;
margin-bottom: 6px;
}
.prismrpg-roll-dialog-modern .checkbox-group .checkbox-label {
display: flex;
align-items: center;
cursor: pointer;
padding: 3px 4px;
border-radius: 3px;
transition: background 0.2s ease;
}
.prismrpg-roll-dialog-modern .checkbox-group .checkbox-label:hover {
background: rgba(0, 0, 0, 0.05);
}
.prismrpg-roll-dialog-modern .checkbox-group .checkbox-label input[type="checkbox"] {
margin-right: 6px;
cursor: pointer;
width: 14px;
height: 14px;
accent-color: #d4af37;
}
.prismrpg-roll-dialog-modern .checkbox-group .checkbox-label .checkbox-text {
display: flex;
align-items: center;
gap: 4px;
font-size: 0.8em;
color: var(--color-dark-2);
}
.prismrpg-roll-dialog-modern .checkbox-group .checkbox-label .checkbox-text i {
color: #888;
font-size: 0.85em;
}
.prismrpg-roll-dialog-modern .checkbox-group .checkbox-label input[type="checkbox"]:checked ~ .checkbox-text {
color: var(--color-dark-1);
font-weight: 500;
}
.prismrpg-roll-dialog-modern .checkbox-group .checkbox-label input[type="checkbox"]:checked ~ .checkbox-text i {
color: #d4af37;
}
.application.dialog.prismrpg .window-content {
background: linear-gradient(135deg, #f5f5f5 0%, #e0e0e0 100%);
padding: 8px;
}
.application.dialog.prismrpg .dialog-buttons {
padding: 6px 8px;
gap: 6px;
}
.application.dialog.prismrpg .dialog-buttons button {
background: linear-gradient(135deg, #4a4a4a 0%, #6a6a6a 100%);
border: 1px solid #3a3a3a;
color: white;
font-weight: 600;
padding: 6px 12px;
border-radius: 4px;
transition: all 0.2s ease;
}
.application.dialog.prismrpg .dialog-buttons button:hover {
background: linear-gradient(135deg, #5a5a5a 0%, #7a7a7a 100%);
box-shadow: 0 2px 4px rgba(0, 0, 0, 0.2);
transform: translateY(-1px);
}
.application.dialog.prismrpg .dialog-buttons button.default,
.application.dialog.prismrpg .dialog-buttons button[data-button="roll"] {
background: linear-gradient(135deg, #d4af37 0%, #f4cf67 100%);
border-color: #b49030;
color: #2a2a2a;
}
.application.dialog.prismrpg .dialog-buttons button.default:hover,
.application.dialog.prismrpg .dialog-buttons button[data-button="roll"]:hover {
background: linear-gradient(135deg, #e4bf47 0%, #ffdf77 100%);
}
#token-hud .hp-loss-wrap {
position: absolute;
left: 75px;