Files
BABA_YAGA/Assets/UI/Global.uss
2026-05-01 16:17:12 +07:00

436 lines
11 KiB
Plaintext

/* Global Styles for Hallucinate UI */
/* ============================================================
DESIGN TOKENS & UNITY THEME OVERRIDES
============================================================ */
:root {
--primary-color: #ffffff;
--accent-color: #00ffcc;
--color-surface: rgba(10, 10, 10, 0.95);
--color-surface-opaque: #0a0a0a;
--color-text-primary: #ffffff;
--color-text-secondary: #aaaaaa;
--color-text-accent: #00ffcc;
--radius-md: 12px;
--radius-lg: 24px;
--radius-pill: 999px;
/* ÉP UNITY DÙNG MÀU CỦA GAME CHO CÁC THÀNH PHẦN NỘI BỘ (DROPDOWN POPUP) */
--unity-colors-surface-background: #0a0a0a;
--unity-colors-surface-border: #00ffcc;
--unity-colors-surface-text: #ffffff;
--unity-colors-highlight-background: rgba(0, 255, 204, 0.2);
}
/* ============================================================
BASE RESET
============================================================ */
.screen-root {
width: 100%;
height: 100%;
position: absolute;
background-color: rgba(0, 0, 0, 0);
color: #ffffff;
-unity-font: url("../Fonts/BitcountSingleInk-VariableFont_CRSV,ELSH,ELXP,SZP1,SZP2,XPN1,XPN2,YPN1,YPN2,slnt,wght.ttf");
-unity-font-definition: url("../Fonts/BitcountSingleInk-VariableFont_CRSV,ELSH,ELXP,SZP1,SZP2,XPN1,XPN2,YPN1,YPN2,slnt,wght SDF.asset");
}
/* ============================================================
TYPOGRAPHY
============================================================ */
.text-heading {
font-size: 32px;
-unity-font-style: bold;
color: #ffffff;
-unity-font: url("../Fonts/BitcountGridDouble-VariableFont_CRSV,ELSH,ELXP,slnt,wght.ttf");
-unity-font-definition: url("../Fonts/BitcountGridDouble-VariableFont_CRSV,ELSH,ELXP,slnt,wght SDF.asset");
margin-bottom: 16px;
}
.text-subheading {
font-size: 24px;
-unity-font-style: bold;
color: #00ffcc;
-unity-font: url("../Fonts/BitcountGridDouble-VariableFont_CRSV,ELSH,ELXP,slnt,wght.ttf");
-unity-font-definition: url("../Fonts/BitcountGridDouble-VariableFont_CRSV,ELSH,ELXP,slnt,wght SDF.asset");
margin-bottom: 12px;
}
.text-label {
font-size: 15px;
color: #aaaaaa;
-unity-font-style: bold;
letter-spacing: 1px;
}
.text-body {
font-size: 18px;
color: #eeeeee;
-unity-font-style: normal;
/* Giúp chữ mượt hơn */
-unity-text-outline-width: 0.1px;
-unity-text-outline-color: rgba(255, 255, 255, 0.1);
}
.text-accent {
color: #00ffcc;
}
/* ============================================================
SCROLL VIEW CUSTOMIZATION
============================================================ */
.scroll-list {
padding-right: 12px;
}
.unity-scroller {
background-color: transparent;
width: 6px;
}
.unity-base-slider__tracker {
background-color: transparent;
border-width: 0;
}
.unity-base-slider__dragger {
background-color: rgba(0, 255, 204, 0.3);
border-radius: 3px;
width: 3px;
left: 1.5px;
border-width: 0;
transition: 200ms;
}
.unity-scroller:hover .unity-base-slider__dragger {
background-color: rgba(0, 255, 204, 0.8);
width: 6px;
left: 0;
}
.unity-scroller__low-button, .unity-scroller__high-button {
display: none;
}
/* ============================================================
BUTTONS
============================================================ */
.button-spring {
height: 48px;
padding: 0 24px;
border-radius: 12px;
border-width: 0;
-unity-font-style: bold;
font-size: 16px;
color: #ffffff;
background-color: rgba(255, 255, 255, 0.1);
transition: 150ms;
align-items: center;
justify-content: center;
}
.button-spring:hover {
scale: 1.05 1.05;
background-color: rgba(255, 255, 255, 0.2);
}
.button-spring:active {
scale: 0.92 0.92;
background-color: rgba(255, 255, 255, 0.3);
transition-duration: 50ms;
}
.btn-settings { background-color: #7B6EE8; }
.btn-join { background-color: #4DC8A0; }
.btn-create { background-color: #E8834D; }
.btn-profile { background-color: #E84D8A; }
.btn-exit { background-color: #666666; }
/* ============================================================
DROPDOWN & FIELDS (THE BIG FIX)
============================================================ */
DropdownField, .unity-dropdown-field {
margin-bottom: 12px;
transition: 200ms;
}
DropdownField .unity-dropdown-field__label {
width: 35%;
color: #aaaaaa;
font-size: 14px;
-unity-font-style: bold;
}
DropdownField .unity-base-field__input {
background-color: rgba(255, 255, 255, 0.05);
border-radius: 10px;
border-width: 1px;
border-color: rgba(255, 255, 255, 0.1);
padding: 10px 15px;
flex-grow: 1;
color: #00ffcc;
transition: 200ms;
}
DropdownField:hover .unity-base-field__input {
background-color: rgba(255, 255, 255, 0.08);
border-color: #00ffcc;
}
/* NHẮM VÀO CÁI MENU XỔ XUỐNG (POPUP) */
/* Cần selector cực kỳ mạnh và ghi đè toàn bộ phân cấp */
/* Container chính của Popup - Lớp phủ toàn màn hình */
.unity-base-dropdown {
background-color: rgba(0, 0, 0, 0) !important; /* Phải để trong suốt để không tràn màn hình */
border-width: 0 !important;
}
/* Phần nền nội bộ của cái menu box thực tế */
.unity-base-dropdown__container-inner {
background-color: #0a0a0a !important;
border-width: 2px !important;
border-color: #00ffcc !important;
border-radius: 12px !important;
margin-top: 10px !important;
padding: 5px !important;
}
/* Từng dòng Item */
.unity-base-dropdown__item {
padding: 12px 15px !important;
background-color: transparent !important;
color: #eeeeee !important;
}
/* Chữ trong Item */
.unity-base-dropdown__label {
color: #eeeeee !important;
}
/* Đè hiệu ứng hover mặc định */
.unity-base-dropdown__item:hover {
background-color: rgba(0, 255, 204, 0.15) !important;
color: #00ffcc !important;
}
.unity-base-dropdown__item:hover .unity-base-dropdown__label {
color: #00ffcc !important;
}
/* Item được chọn */
.unity-base-dropdown__item--selected {
background-color: rgba(0, 255, 204, 0.1) !important;
color: #00ffcc !important;
}
.unity-base-dropdown__checkmark {
-unity-background-image-tint-color: #00ffcc !important;
}
/* ============================================================
SMART SIDEBAR (OSU STYLE OVERLAY)
============================================================ */
.sidebar-tabs-container {
background-color: rgba(5, 5, 5, 0.95);
padding-top: 60px;
flex-shrink: 0;
border-right-width: 1px;
border-right-color: rgba(0, 255, 204, 0.1);
transition: width 0.3s ease-out-quad;
overflow: hidden;
height: 100%;
}
.sidebar-collapsed {
width: 80px;
}
.sidebar-expanded {
width: 240px;
position: absolute;
z-index: 100;
border-right-color: #00ffcc;
border-right-width: 2px;
}
.sidebar-tab {
height: 60px;
background-color: transparent;
border-width: 0;
padding: 0;
flex-direction: row;
align-items: center;
border-left-width: 4px;
border-left-color: transparent;
margin: 2px 0;
}
.tab-icon-box {
width: 80px;
height: 60px;
justify-content: center;
align-items: center;
flex-shrink: 0;
}
.tab-icon {
width: 32px;
height: 32px;
background-color: #ffffff; /* Placeholder color */
-unity-background-image-tint-color: #ffffff;
}
.active-tab .tab-icon {
-unity-background-image-tint-color: #00ffcc;
background-color: #00ffcc;
}
.tab-label {
font-size: 16px;
-unity-font-style: bold;
color: #888888;
margin-left: 10px;
white-space: nowrap;
opacity: 0;
transition: opacity 0.2s;
}
.sidebar-expanded .tab-label {
opacity: 1;
color: #ffffff;
}
/* ICON-ONLY BACK BUTTON */
.btn-icon-only {
width: 44px;
height: 44px;
border-radius: 22px;
padding: 0;
justify-content: center;
align-items: center;
}
.btn-icon-only .tab-icon {
width: 24px;
height: 24px;
}
/* ============================================================
PANELS
============================================================ */
.panel-glass {
background-color: var(--color-surface);
border-radius: 20px;
border-width: 1px;
border-color: rgba(255, 255, 255, 0.1);
}
.input-field {
height: 48px;
border-radius: 12px;
border-width: 1px;
border-color: rgba(255, 255, 255, 0.15);
background-color: rgba(255, 255, 255, 0.08);
color: #ffffff;
padding-left: 16px;
margin-bottom: 16px;
}
.unity-base-text-field__input {
background-color: rgba(0, 0, 0, 0);
border-width: 0;
}
.ribbon {
flex-direction: row;
height: 120px;
width: 100%;
background-color: rgba(10, 10, 10, 0.95);
border-top-width: 2px;
border-bottom-width: 2px;
border-top-color: #00ffcc;
border-bottom-color: #00ffcc;
align-items: center;
justify-content: center;
padding: 0 50px;
position: absolute;
top: 50%;
translate: 0 -50%;
}
.border-accent { border-color: #00ffcc; }
/* ============================================================
SETTINGS & REBINDING
============================================================ */
.sidebar-tab {
height: 54px;
background-color: transparent;
border-width: 0;
color: #888888;
-unity-font-style: bold;
font-size: 16px;
border-left-width: 4px;
border-left-color: transparent;
padding-left: 24px;
border-radius: 0;
margin: 2px 0;
-unity-text-align: middle-left;
}
.sidebar-tab:hover {
color: #ffffff;
background-color: rgba(255, 255, 255, 0.03);
}
.active-tab {
color: #00ffcc;
border-left-color: #00ffcc;
background-color: rgba(0, 255, 204, 0.08);
}
.rebind-row {
flex-direction: row;
justify-content: space-between;
align-items: center;
padding: 12px 16px;
background-color: rgba(255, 255, 255, 0.02);
border-radius: 10px;
margin-bottom: 6px;
}
.rebind-label {
font-size: 14px;
color: #cccccc;
}
.rebind-button {
width: 140px;
height: 36px;
background-color: rgba(255, 255, 255, 0.08);
border-radius: 8px;
border-width: 1px;
border-color: rgba(255, 255, 255, 0.1);
color: #00ffcc;
font-size: 13px;
-unity-font-style: bold;
}
.rebind-button:hover {
background-color: rgba(255, 255, 255, 0.15);
border-color: #00ffcc;
}
.setting-section-header {
margin-top: 24px;
margin-bottom: 12px;
font-size: 13px;
color: #666666;
-unity-font-style: bold;
border-bottom-width: 1px;
border-bottom-color: rgba(255, 255, 255, 0.05);
padding-bottom: 6px;
letter-spacing: 1px;
}