/* LanguageDialog 语言切换弹窗样式 */ .overlay { position: fixed; inset: 0; background: rgba(0, 0, 0, 0.5); display: flex; align-items: center; justify-content: center; z-index: 50; padding: calc(var(--spacing-lg, 16px) + var(--app-safe-top, 0px)) calc(var(--spacing-lg, 16px) + var(--app-safe-right, 0px)) calc(var(--spacing-lg, 16px) + var(--app-safe-bottom, 0px)) calc(var(--spacing-lg, 16px) + var(--app-safe-left, 0px)); } .dialog { width: 100%; max-width: var(--dialog-max-width, 360px); background: var(--color-surface, #1f1a2e); border-radius: var(--radius-lg, 12px); padding: var(--spacing-5, 20px); display: flex; flex-direction: column; gap: var(--spacing-3, 12px); max-height: min(80vh, calc(var(--app-visible-height, 100dvh) - 32px)); } .title { font-size: var(--responsive-section-title, var(--font-size-lg, 18px)); font-weight: 600; margin: 0; color: var(--color-text-primary, #fff); } .list { display: flex; flex-direction: column; gap: var(--spacing-1, 4px); overflow-y: auto; max-height: min(60vh, calc(var(--app-visible-height, 100dvh) - 120px)); } .item { display: flex; align-items: center; justify-content: space-between; padding: var(--spacing-3, 12px) var(--spacing-4, 16px); background: transparent; border: 0; border-radius: var(--radius-md, 8px); color: var(--color-text-primary, #fff); font-size: var(--responsive-body, var(--font-size-base, 14px)); text-align: left; cursor: pointer; } .item:hover, .item:focus-visible { background: rgba(255, 255, 255, 0.05); } .itemActive { background: rgba(248, 77, 150, 0.15); } .check { color: var(--color-accent, #f84d96); font-weight: 700; }