fix(game-ui): 버튼 눌림 효과를 공통화

Lumen 버튼의 테두리와 hover/active 이동을 공통 레이어가 소유하도록 정리하고 색상 변형은 CSS 변수만 설정하게 합니다.\n\n모바일 하단의 외부·국가·빠른 이동·갱신·로비 버튼을 같은 계약에 연결하고 Chromium 회귀 검증을 확장합니다.
This commit is contained in:
2026-08-16 05:50:19 +00:00
parent 99e1f24285
commit 898fa7ac0d
5 changed files with 218 additions and 105 deletions
@@ -39,18 +39,23 @@
}
/*
* Ref Bootstrap 5.2 + Lumen button family. The modifier describes the legacy
* semantic role; width and placement remain in the owning scoped component.
* Ref Bootstrap 5.2 + Lumen button family. This class owns the common raised
* edge and pressed movement. Semantic modifiers below only select face, edge,
* and text colors; width and fixed-height compensation stay with the owner.
* Existing semantic modifiers also opt in for backward compatibility.
*/
.legacy-button:is(
.legacy-button--lumen,
.legacy-button--primary,
.legacy-button--secondary,
.legacy-button--danger,
.legacy-button--info,
.legacy-button--navigation
.legacy-button--navigation,
.legacy-button--dark
) {
--legacy-button-bg: var(--sammo-button-primary-bg);
--legacy-button-border: var(--sammo-button-primary-border);
--legacy-button-color: #fff;
min-height: 35.5px;
margin-top: 0;
border-color: var(--legacy-button-border);
@@ -59,7 +64,7 @@
border-radius: 5.25px;
padding: 5.25px 10.5px;
background: var(--legacy-button-bg);
color: #fff;
color: var(--legacy-button-color);
line-height: 21px;
/* Ref's framework baseline for these controls. */
vertical-align: middle;
@@ -85,12 +90,19 @@
--legacy-button-border: var(--sammo-button-navigation-border);
}
.legacy-button.legacy-button--dark {
--legacy-button-bg: var(--sammo-button-dark-bg);
--legacy-button-border: var(--sammo-button-dark-border);
}
.legacy-button:is(
.legacy-button--lumen,
.legacy-button--primary,
.legacy-button--secondary,
.legacy-button--danger,
.legacy-button--info,
.legacy-button--navigation
.legacy-button--navigation,
.legacy-button--dark
):not(:disabled, [aria-disabled='true']):hover {
margin-top: 1px;
border-color: var(--legacy-button-border);
@@ -99,11 +111,28 @@
}
.legacy-button:is(
.legacy-button--lumen,
.legacy-button--primary,
.legacy-button--secondary,
.legacy-button--danger,
.legacy-button--info,
.legacy-button--navigation
.legacy-button--navigation,
.legacy-button--dark
):not(:disabled, [aria-disabled='true'])[aria-expanded='true'] {
margin-top: 1px;
border-color: var(--legacy-button-border);
border-bottom-width: 3px;
background: var(--legacy-button-bg);
}
.legacy-button:is(
.legacy-button--lumen,
.legacy-button--primary,
.legacy-button--secondary,
.legacy-button--danger,
.legacy-button--info,
.legacy-button--navigation,
.legacy-button--dark
):not(:disabled, [aria-disabled='true']):active {
margin-top: 2px;
border-color: var(--legacy-button-border);
@@ -112,16 +141,14 @@
box-shadow: none;
}
.legacy-button.legacy-button--primary:not(:disabled):active {
background: #2d4967;
}
.legacy-button:is(
.legacy-button--lumen,
.legacy-button--primary,
.legacy-button--secondary,
.legacy-button--danger,
.legacy-button--info,
.legacy-button--navigation
.legacy-button--navigation,
.legacy-button--dark
):focus {
border-color: var(--legacy-button-border);
background: var(--legacy-button-bg);
@@ -21,6 +21,8 @@
--sammo-button-info-border: #2f89c5;
--sammo-button-navigation-bg: #00582c;
--sammo-button-navigation-border: #004f28;
--sammo-button-dark-bg: #212529;
--sammo-button-dark-border: #1e2125;
--sammo-texture-walnut: url('https://sam-image.hided.net/game/back_walnut.jpg');
--sammo-texture-green: url('https://sam-image.hided.net/game/back_green.jpg');
--sammo-texture-blue: url('https://sam-image.hided.net/game/back_blue.jpg');