.gh-card{background:var(--gh-card-bg);border:var(--gh-card-border);border-radius:var(--gh-card-radius);box-shadow:var(--gh-card-shadow)}.gh-card--raised{box-shadow:var(--gh-card-shadow-emphasis)}.gh-card--pressable{transition:transform var(--gh-motion-fast) var(--gh-ease-standard),box-shadow var(--gh-motion-fast) var(--gh-ease-standard),opacity var(--gh-motion-fast) var(--gh-ease-standard)}.gh-card--pressable:active{transform:scale(var(--gh-press-scale-card));opacity:.92}.gh-divider{height:var(--gh-border-width-hairline);background:var(--gh-divider)}.gh-button{min-height:var(--gh-button-height-md);padding:0 var(--gh-button-padding-x-md);border-radius:var(--gh-button-radius);display:flex;align-items:center;justify-content:center;font-size:var(--gh-text-body-size);font-weight:var(--gh-font-semibold);transition:transform var(--gh-motion-fast) var(--gh-ease-standard),opacity var(--gh-motion-fast) var(--gh-ease-standard)}.gh-button:active{transform:scale(var(--gh-press-scale-button));opacity:.88}.gh-button--primary{background:var(--gh-button-primary-bg);color:var(--gh-button-primary-text);box-shadow:var(--gh-shadow-primary)}.gh-button--secondary{background:var(--gh-button-secondary-bg);color:var(--gh-button-secondary-text);border:var(--gh-border-control)}.gh-button--danger{background:var(--gh-button-danger-bg);color:var(--gh-text-on-primary)}.gh-button--disabled,.gh-button[disabled]{background:var(--gh-button-disabled-bg);color:var(--gh-button-disabled-text);box-shadow:none;opacity:.62;pointer-events:none}.gh-icon-button{width:var(--gh-button-height-sm);height:var(--gh-button-height-sm);border-radius:var(--gh-radius-lg);background:var(--gh-surface-base);border:var(--gh-border-card);display:flex;align-items:center;justify-content:center;transition:transform var(--gh-motion-fast) var(--gh-ease-standard),opacity var(--gh-motion-fast) var(--gh-ease-standard)}.gh-icon-button:active{transform:scale(var(--gh-press-scale-button));opacity:.86}.gh-icon{width:var(--gh-icon-sm);height:var(--gh-icon-sm);flex-shrink:0}.gh-input{min-height:var(--gh-input-height);background:var(--gh-input-bg);border:var(--gh-input-border);border-radius:var(--gh-input-radius);color:var(--gh-input-text);padding:0 var(--gh-space-6)}.gh-input--focus,.gh-input:focus-within{border:var(--gh-input-focus-border)}.gh-field{display:flex;flex-direction:column;gap:var(--gh-space-2)}.gh-field__label{font-size:var(--gh-text-label-size);font-weight:var(--gh-font-medium);color:var(--gh-text-secondary)}.gh-field__hint{font-size:var(--gh-text-tiny-size);color:var(--gh-text-tertiary)}.gh-safe-top{padding-top:var(--gh-safe-top)}.gh-safe-bottom{padding-bottom:var(--gh-safe-bottom)}.gh-avoid-navbar{padding-top:calc(var(--gh-navbar-height) + var(--gh-safe-top))}.gh-avoid-tabbar{padding-bottom:calc(var(--gh-tabbar-height) + var(--gh-safe-bottom))}:root{--gh-primary: #8B5CFF;--gh-primary-hover: #A77BFF;--gh-primary-pressed: #693CE6;--gh-primary-subtle: rgba(139, 92, 255, .16);--gh-primary-rgb: 139, 92, 255;--gh-secondary: #00F0FF;--gh-secondary-subtle: rgba(0, 240, 255, .12);--gh-secondary-rgb: 0, 240, 255;--gh-accent: #FF3D8B;--gh-accent-subtle: rgba(255, 61, 139, .14);--gh-accent-rgb: 255, 61, 139;--gh-success: #00F0A8;--gh-success-subtle: rgba(0, 240, 168, .12);--gh-warning: #FFD166;--gh-warning-subtle: rgba(255, 209, 102, .13);--gh-danger: #FF4D6D;--gh-danger-subtle: rgba(255, 77, 109, .13);--gh-info: #00F0FF;--gh-info-subtle: rgba(0, 240, 255, .12);--gh-bg-page: #050712;--gh-bg-page-soft: #090D1B;--gh-surface-base: #0E1424;--gh-surface-raised: #151D31;--gh-surface-overlay: #1B2740;--gh-surface-card: rgba(18, 26, 43, .92);--gh-surface-input: rgba(13, 20, 34, .92);--gh-surface-disabled: #2A3349;--gh-surface-glass: rgba(12, 18, 32, .78);--gh-text-primary: #F8FBFF;--gh-text-secondary: #B9C7E6;--gh-text-tertiary: #7E8BAD;--gh-text-placeholder: #687696;--gh-text-disabled: #4E5A76;--gh-text-inverse: #0A0E1A;--gh-text-on-primary: #FFFFFF;--gh-border-subtle: rgba(255, 255, 255, .07);--gh-border-default: rgba(148, 170, 255, .16);--gh-border-strong: rgba(0, 240, 255, .24);--gh-border-focus: rgba(0, 240, 255, .58);--gh-divider: rgba(148, 170, 255, .1);--gh-overlay-light: rgba(10, 14, 26, .42);--gh-overlay-medium: rgba(10, 14, 26, .68);--gh-overlay-modal: rgba(0, 0, 0, .62);--gh-gradient-primary: linear-gradient(135deg, #8B5CFF 0%, #00F0FF 58%, #00F0A8 100%);--gh-gradient-danger: linear-gradient(135deg, #FF3D8B 0%, #FF7A59 100%);--gh-gradient-surface: linear-gradient(180deg, rgba(29, 42, 70, .96) 0%, rgba(15, 22, 39, .96) 100%);--gh-gradient-card: linear-gradient(145deg, rgba(28, 39, 66, .92) 0%, rgba(11, 17, 31, .96) 100%);--gh-gradient-page: radial-gradient(circle at 18% -8%, rgba(0, 240, 255, .15), transparent 30%), radial-gradient(circle at 92% 4%, rgba(139, 92, 255, .18), transparent 34%), radial-gradient(circle at 60% 110%, rgba(255, 61, 139, .1), transparent 34%), linear-gradient(180deg, #050712 0%, #090D1B 46%, #050712 100%);--gh-gradient-media-overlay: linear-gradient(180deg, transparent 0%, var(--gh-overlay-medium) 100%);--gh-font-family: -apple-system, BlinkMacSystemFont, "PingFang SC", "HarmonyOS Sans", "Noto Sans SC", "Helvetica Neue", sans-serif;--gh-font-family-number: "DIN Alternate", DIN, -apple-system, BlinkMacSystemFont, "Helvetica Neue", sans-serif;--gh-text-display-size: 48rpx;--gh-text-title-xl-size: 40rpx;--gh-text-title-lg-size: 34rpx;--gh-text-title-md-size: 32rpx;--gh-text-title-sm-size: 28rpx;--gh-text-body-size: 28rpx;--gh-text-caption-size: 24rpx;--gh-text-label-size: 24rpx;--gh-text-tiny-size: 20rpx;--gh-font-light: 300;--gh-font-regular: 400;--gh-font-medium: 500;--gh-font-semibold: 600;--gh-font-bold: 700;--gh-line-tight: 1.22;--gh-line-normal: 1.5;--gh-line-relaxed: 1.7;--gh-space-0: 0;--gh-space-1: 4rpx;--gh-space-2: 8rpx;--gh-space-3: 12rpx;--gh-space-4: 16rpx;--gh-space-5: 20rpx;--gh-space-6: 24rpx;--gh-space-7: 28rpx;--gh-space-8: 32rpx;--gh-space-10: 40rpx;--gh-space-12: 48rpx;--gh-space-16: 64rpx;--gh-page-padding-x: var(--gh-space-8);--gh-page-padding-y: var(--gh-space-6);--gh-section-gap: var(--gh-space-10);--gh-card-padding: var(--gh-space-5);--gh-form-gap: var(--gh-space-6);--gh-list-gap: var(--gh-space-3);--gh-radius-none: 0;--gh-radius-xs: 6rpx;--gh-radius-sm: 10rpx;--gh-radius-md: 16rpx;--gh-radius-lg: 22rpx;--gh-radius-xl: 30rpx;--gh-radius-2xl: 40rpx;--gh-radius-full: 999rpx;--gh-radius-card: var(--gh-radius-lg);--gh-radius-control: var(--gh-radius-md);--gh-shadow-none: none;--gh-shadow-card: 0 18rpx 44rpx rgba(0, 0, 0, .3);--gh-shadow-panel: 0 28rpx 72rpx rgba(0, 0, 0, .46);--gh-shadow-floating: 0 22rpx 54rpx rgba(0, 0, 0, .38);--gh-shadow-primary: 0 14rpx 34rpx rgba(0, 240, 255, .22), 0 10rpx 28rpx rgba(139, 92, 255, .22);--gh-border-width-hairline: 1rpx;--gh-border-width-default: 2rpx;--gh-border-card: var(--gh-border-width-hairline) solid var(--gh-border-default);--gh-border-control: var(--gh-border-width-hairline) solid var(--gh-border-default);--gh-border-focus-ring: var(--gh-border-width-default) solid var(--gh-border-focus);--gh-icon-xs: 24rpx;--gh-icon-sm: 32rpx;--gh-icon-md: 40rpx;--gh-icon-lg: 48rpx;--gh-icon-xl: 64rpx;--gh-icon-stroke: 2px;--gh-motion-instant: 80ms;--gh-motion-fast: .15s;--gh-motion-normal: .24s;--gh-motion-slow: .36s;--gh-ease-standard: cubic-bezier(.2, 0, 0, 1);--gh-ease-emphasized: cubic-bezier(.2, 0, 0, 1.2);--gh-press-scale-card: .98;--gh-press-scale-button: .96;--gh-button-height-sm: 64rpx;--gh-button-height-md: 88rpx;--gh-button-height-lg: 96rpx;--gh-button-padding-x-sm: 24rpx;--gh-button-padding-x-md: 32rpx;--gh-button-padding-x-lg: 48rpx;--gh-button-radius: var(--gh-radius-control);--gh-button-primary-bg: var(--gh-gradient-primary);--gh-button-primary-text: var(--gh-text-on-primary);--gh-button-secondary-bg: var(--gh-surface-raised);--gh-button-secondary-text: var(--gh-text-primary);--gh-button-danger-bg: var(--gh-danger);--gh-button-disabled-bg: var(--gh-surface-disabled);--gh-button-disabled-text: var(--gh-text-disabled);--gh-card-bg: var(--gh-surface-card);--gh-card-border: var(--gh-border-card);--gh-card-radius: var(--gh-radius-card);--gh-card-shadow: var(--gh-shadow-none);--gh-card-shadow-emphasis: var(--gh-shadow-card);--gh-input-height: 88rpx;--gh-input-bg: var(--gh-surface-input);--gh-input-border: var(--gh-border-control);--gh-input-focus-border: var(--gh-border-focus-ring);--gh-input-radius: var(--gh-radius-control);--gh-input-text: var(--gh-text-primary);--gh-input-placeholder: var(--gh-text-placeholder);--gh-dialog-width: 600rpx;--gh-dialog-bg: var(--gh-surface-overlay);--gh-dialog-radius: var(--gh-radius-xl);--gh-dialog-shadow: var(--gh-shadow-panel);--gh-dialog-padding: var(--gh-space-8);--gh-popup-bg: var(--gh-surface-overlay);--gh-popup-radius: var(--gh-radius-xl);--gh-popup-shadow: var(--gh-shadow-panel);--gh-popup-padding: var(--gh-space-8);--gh-tabbar-height: 100rpx;--gh-tabbar-bg: rgba(13, 17, 26, .96);--gh-tabbar-border: var(--gh-divider);--gh-tabbar-icon-size: var(--gh-icon-md);--gh-tabbar-label-size: var(--gh-text-tiny-size);--gh-tabbar-inactive: var(--gh-text-tertiary);--gh-tabbar-active: var(--gh-primary);--gh-navbar-height: 88rpx;--gh-navbar-bg: var(--gh-surface-glass);--gh-navbar-border: var(--gh-divider);--gh-navbar-title-size: var(--gh-text-title-lg-size);--gh-navbar-title-weight: var(--gh-font-semibold);--gh-navbar-icon-size: var(--gh-icon-lg);--gh-safe-top: env(safe-area-inset-top, 0px);--gh-safe-bottom: env(safe-area-inset-bottom, 0px)}.app-root,:root,page{--gh-primary: #6C3FF5;--gh-primary-hover: #7C55FF;--gh-primary-pressed: #5630D6;--gh-primary-subtle: rgba(108, 63, 245, .12);--gh-primary-rgb: 108, 63, 245;--gh-secondary: #39C5FF;--gh-secondary-subtle: rgba(57, 197, 255, .14);--gh-secondary-rgb: 57, 197, 255;--gh-accent: #FF5B8F;--gh-accent-subtle: rgba(255, 91, 143, .13);--gh-accent-rgb: 255, 91, 143;--gh-success: #16A34A;--gh-success-subtle: rgba(22, 163, 74, .1);--gh-warning: #F59E0B;--gh-warning-subtle: rgba(245, 158, 11, .12);--gh-danger: #EF4444;--gh-danger-subtle: rgba(239, 68, 68, .11);--gh-info: #0EA5E9;--gh-info-subtle: rgba(14, 165, 233, .11);--gh-bg-page: #F6F7FB;--gh-bg-page-soft: #EEF6FF;--gh-surface-base: #FFFFFF;--gh-surface-raised: #FFFFFF;--gh-surface-overlay: #FFFFFF;--gh-surface-card: rgba(255, 255, 255, .96);--gh-surface-input: #F8FAFC;--gh-surface-disabled: #E5EAF3;--gh-surface-glass: rgba(255, 255, 255, .88);--gh-text-primary: #20232A;--gh-text-secondary: #5F6673;--gh-text-tertiary: #9AA0AA;--gh-text-placeholder: #B8BDC8;--gh-text-disabled: #B9C2D3;--gh-text-inverse: #FFFFFF;--gh-text-on-primary: #FFFFFF;--gh-border-subtle: rgba(17, 24, 39, .06);--gh-border-default: rgba(31, 35, 45, .06);--gh-border-strong: rgba(108, 63, 245, .18);--gh-border-focus: rgba(108, 63, 245, .36);--gh-divider: rgba(17, 24, 39, .08);--gh-overlay-light: rgba(15, 23, 42, .18);--gh-overlay-medium: rgba(15, 23, 42, .42);--gh-overlay-modal: rgba(15, 23, 42, .54);--gh-gradient-primary: linear-gradient(135deg, #7652FF 0%, #8A4DFF 48%, #39C5FF 100%);--gh-gradient-danger: linear-gradient(135deg, #EF4444 0%, #F97316 100%);--gh-gradient-surface: linear-gradient(180deg, rgba(255, 255, 255, .98) 0%, rgba(244, 248, 255, .98) 100%);--gh-gradient-card: linear-gradient(145deg, rgba(255, 255, 255, 1) 0%, rgba(255, 255, 255, .96) 100%);--gh-gradient-page: radial-gradient(circle at 4% -8%, rgba(151, 219, 255, .62), transparent 28%), radial-gradient(circle at 94% 0%, rgba(188, 181, 255, .64), transparent 34%), linear-gradient(180deg, #F7FBFF 0%, #F6F7FB 44%, #FFFFFF 100%);--gh-gradient-media-overlay: linear-gradient(180deg, transparent 0%, rgba(15, 23, 42, .42) 100%);--gh-shadow-card: 0 14rpx 34rpx rgba(36, 42, 56, .07);--gh-shadow-panel: 0 26rpx 68rpx rgba(36, 42, 56, .1);--gh-shadow-floating: 0 20rpx 48rpx rgba(36, 42, 56, .09);--gh-shadow-primary: 0 16rpx 34rpx rgba(108, 63, 245, .18);--gh-tabbar-bg: rgba(255, 255, 255, .96);--gh-tabbar-inactive: #7B879E;--gh-tabbar-active: var(--gh-primary);--gh-navbar-bg: rgba(255, 255, 255, .92);--gh-navbar-border: var(--gh-divider)}page{background:var(--gh-gradient-page);color:var(--gh-text-primary);font-size:var(--gh-text-body-size);font-family:var(--gh-font-family);line-height:var(--gh-line-normal);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;overflow-x:hidden}view,scroll-view,swiper,swiper-item,movable-view,cover-view,text,image,input,textarea,button,navigator{box-sizing:border-box}view,scroll-view,swiper,swiper-item,movable-view,cover-view{line-height:var(--gh-line-normal)}image{display:block}input,textarea{color:var(--gh-input-text);font-family:var(--gh-font-family)}button{padding:0;margin:0;background:transparent;border:0;outline:0}button:after{border:0}.ellipsis{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ellipsis-2,.ellipsis-3{display:-webkit-box;overflow:hidden;text-overflow:ellipsis;-webkit-box-orient:vertical}.ellipsis-2{-webkit-line-clamp:2}.ellipsis-3{-webkit-line-clamp:3}.skeleton{background:var(--gh-surface-card);border-radius:var(--gh-radius-xs);animation:gh-skeleton-pulse 1.5s ease-in-out infinite}@keyframes gh-skeleton-pulse{0%,to{opacity:.34}50%{opacity:.66}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes fadeOut{0%{opacity:1}to{opacity:0}}@keyframes slideUp{0%{opacity:0;transform:translateY(var(--gh-space-5))}to{opacity:1;transform:translateY(0)}}@keyframes slideDown{0%{opacity:0;transform:translateY(calc(-1 * var(--gh-space-5)))}to{opacity:1;transform:translateY(0)}}@keyframes scaleUp{0%{opacity:0;transform:scale(.94)}to{opacity:1;transform:scale(1)}}@keyframes scaleDown{0%{opacity:1;transform:scale(1)}to{opacity:0;transform:scale(.94)}}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}.glass-effect{background:var(--gh-surface-overlay)}@supports (backdrop-filter: blur(20px)){.glass-effect{background:var(--gh-surface-glass);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px)}}.safe-padding-bottom{padding-bottom:var(--gh-space-5);padding-bottom:constant(safe-area-inset-bottom);padding-bottom:var(--gh-safe-bottom)}.home-page,.category-page,.chat-page,.chat-window,.profile-page,.settings-page,.feedback-page,.login-page,.game-detail-page,.user-info-page,.announcement-detail-page,.announcements-page,.search-page,.cs-page,.webview-page{min-height:100vh;background:var(--gh-gradient-page);color:var(--gh-text-primary)}.app-root{width:100%;min-height:100vh;background:var(--gh-gradient-page);color:var(--gh-text-primary);font-family:var(--gh-font-family);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}
