fix(lan-client): compact phase pills, wrap NEXT PHASE/NEXT TURN labels
The phase track (BEGIN · MAIN 1 · COMBAT · END) was losing labels to
ellipsis on narrow top bars, and the primary action buttons were
clipping "NEXT PHASE"/"NEXT TURN" because they had white-space: nowrap
and a fixed height.
.phase-step:
- tighter padding (1px 5px) and gap (2px)
- no letter-spacing, smaller border-radius, flex-shrink: 1 so pills
compress uniformly when the top bar is crowded
- merged duplicate .phase-step.active rule and made it bolder so the
active step still reads well after the shrink
.btn-phase (NEXT PHASE / NEXT TURN):
- white-space: normal + word-break: break-word enable two-line wrap
- height: auto + min-height: 34px lets the label breathe inside
the 44px top bar
- min-width: 64px / max-width: 80px keeps the buttons square-ish
- display: flex centers the wrapped text vertically & horizontally
- align-items: stretch on .top-bar-actions so both buttons match
the tallest sibling's height
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
1 parent
d308e8f413
commit
4cae97ab44
1 file changed
+28
-9
+28
-9
@@ -218,23 +218,24 @@ input { font-family: inherit; }
|
|||||||
}
|
}
|
||||||
|
|
||||||
.phase-step {
|
.phase-step {
|
||||||
flex: 1;
|
flex: 1 1 0;
|
||||||
display: flex;
|
display: flex;
|
||||||
align-items: center;
|
align-items: center;
|
||||||
justify-content: center;
|
justify-content: center;
|
||||||
gap: 3px;
|
gap: 2px;
|
||||||
padding: 3px 5px;
|
padding: 1px 5px;
|
||||||
font-size: 10px;
|
font-size: 10px;
|
||||||
font-weight: 600;
|
font-weight: 600;
|
||||||
color: var(--color-text-faint);
|
color: var(--color-text-faint);
|
||||||
border-radius: var(--radius-sm);
|
border-radius: 3px;
|
||||||
cursor: pointer;
|
cursor: pointer;
|
||||||
white-space: nowrap;
|
white-space: nowrap;
|
||||||
text-transform: uppercase;
|
text-transform: uppercase;
|
||||||
letter-spacing: 0.04em;
|
letter-spacing: 0;
|
||||||
transition: background 0.15s, color 0.15s;
|
transition: background 0.15s, color 0.15s;
|
||||||
position: relative;
|
position: relative;
|
||||||
min-width: 0;
|
min-width: 0;
|
||||||
|
flex-shrink: 1;
|
||||||
overflow: hidden;
|
overflow: hidden;
|
||||||
text-overflow: ellipsis;
|
text-overflow: ellipsis;
|
||||||
}
|
}
|
||||||
@@ -244,7 +245,12 @@ input { font-family: inherit; }
|
|||||||
color: var(--color-text-muted);
|
color: var(--color-text-muted);
|
||||||
}
|
}
|
||||||
|
|
||||||
.phase-step.active { color: #fff; }
|
.phase-step.active {
|
||||||
|
color: #fff;
|
||||||
|
padding: 1px 6px;
|
||||||
|
font-weight: 700;
|
||||||
|
}
|
||||||
|
|
||||||
.phase-step.done { color: var(--color-text-faint); opacity: 0.5; }
|
.phase-step.done { color: var(--color-text-faint); opacity: 0.5; }
|
||||||
|
|
||||||
.phase-connector {
|
.phase-connector {
|
||||||
@@ -258,6 +264,7 @@ input { font-family: inherit; }
|
|||||||
display: flex;
|
display: flex;
|
||||||
gap: 4px;
|
gap: 4px;
|
||||||
flex-shrink: 0;
|
flex-shrink: 0;
|
||||||
|
align-items: stretch;
|
||||||
}
|
}
|
||||||
|
|
||||||
.btn-phase {
|
.btn-phase {
|
||||||
@@ -266,11 +273,23 @@ input { font-family: inherit; }
|
|||||||
border: 1px solid var(--color-border);
|
border: 1px solid var(--color-border);
|
||||||
border-radius: var(--radius-md);
|
border-radius: var(--radius-md);
|
||||||
color: var(--color-text-muted);
|
color: var(--color-text-muted);
|
||||||
font-size: 10px;
|
font-size: 11px;
|
||||||
font-weight: 600;
|
font-weight: 600;
|
||||||
text-transform: uppercase;
|
text-transform: uppercase;
|
||||||
letter-spacing: 0.05em;
|
letter-spacing: 0.03em;
|
||||||
white-space: nowrap;
|
/* Allow two-word labels (Next Phase / Next Turn) to wrap on two lines
|
||||||
|
instead of being clipped or forcing a wide button. */
|
||||||
|
white-space: normal;
|
||||||
|
word-break: break-word;
|
||||||
|
text-align: center;
|
||||||
|
line-height: 1.15;
|
||||||
|
display: flex;
|
||||||
|
align-items: center;
|
||||||
|
justify-content: center;
|
||||||
|
height: auto;
|
||||||
|
min-height: 34px;
|
||||||
|
min-width: 64px;
|
||||||
|
max-width: 80px;
|
||||||
}
|
}
|
||||||
|
|
||||||
.btn-phase:hover {
|
.btn-phase:hover {
|
||||||
|
|||||||
Reference in new issue
Block a user