Video over token, free-form video windows
CI / ci (push) Successful in 40s
Release Creation / build (release) Successful in 46s

This commit is contained in:
2026-06-07 22:18:08 +02:00
parent a9dbb9306a
commit 76ce992505
22 changed files with 2649 additions and 36 deletions
+117
View File
@@ -0,0 +1,117 @@
/**
* Actor-Mapping Panel styles.
*
* GM settings submenu to assign actors to user webcams for token overlay.
* Uses SP (Scrying Pool) semantic token system.
*/
@import "../tokens/_base.less";
.scrying-pool {
&.actor-mapping {
background: var(--sp-dialog-bg);
color: var(--sp-text-primary);
font-family: var(--font-primary, inherit);
border: var(--sp-dialog-border);
border-top: 2px solid var(--sp-accent);
border-radius: var(--sp-dialog-radius);
box-shadow: var(--sp-dialog-shadow);
}
.sp-actor-mapping {
display: flex;
flex-direction: column;
min-width: 320px;
max-width: 500px;
}
.sp-actor-mapping__hint {
margin: 0 0 12px 0;
font-size: 12px;
color: var(--sp-text-secondary);
line-height: 1.4;
padding: 12px 12px 0;
}
.sp-actor-mapping__empty {
text-align: center;
color: var(--sp-text-muted);
font-size: 13px;
padding: 24px 12px;
margin: 0;
}
.sp-actor-mapping__table {
display: flex;
flex-direction: column;
padding: 0 12px 12px;
gap: 6px;
}
.sp-actor-mapping__row {
display: flex;
align-items: center;
gap: 8px;
padding: 6px 8px;
background: var(--sp-surface);
border: 1px solid var(--sp-border);
border-radius: var(--sp-radius-md);
}
.sp-actor-mapping__user {
display: flex;
align-items: center;
gap: 6px;
flex: 1;
min-width: 0;
}
.sp-actor-mapping__user-avatar {
width: 24px;
height: 24px;
border-radius: 50%;
object-fit: cover;
flex-shrink: 0;
}
.sp-actor-mapping__user-name {
font-size: 12px;
font-weight: 600;
color: var(--sp-text-primary);
white-space: nowrap;
overflow: hidden;
text-overflow: ellipsis;
}
.sp-actor-mapping__badge {
font-size: 9px;
font-weight: 700;
text-transform: uppercase;
letter-spacing: 0.04em;
color: var(--sp-accent);
border: 1px solid var(--sp-accent);
border-radius: 3px;
padding: 1px 4px;
flex-shrink: 0;
line-height: 1.2;
opacity: 0.85;
}
.sp-actor-mapping__select {
flex-shrink: 0;
width: 180px;
padding: 4px 6px;
font-size: 12px;
font-family: var(--font-primary, inherit);
background: var(--sp-control-bg);
color: var(--sp-text-primary);
border: 1px solid var(--sp-border);
border-radius: var(--sp-radius-sm);
cursor: pointer;
}
.sp-actor-mapping__select:focus-visible {
outline: none;
box-shadow: var(--sp-focus-ring);
}
}