// Vagabond RPG - Level Up Dialog Styles // ====================================== // Styles for the level-up dialog that shows gained features and choices. .vagabond.level-up-dialog { &.themed { background-color: var(--color-bg-primary); color: var(--color-text-primary); } .level-up-content { @include flex-column; gap: $spacing-4; padding: $spacing-4; background-color: var(--color-bg-primary); color: var(--color-text-primary); } // Header section .level-up-header { text-align: center; padding-bottom: $spacing-3; border-bottom: 2px solid var(--color-accent-primary); h2 { margin: 0 0 $spacing-2 0; font-family: $font-family-header; font-size: $font-size-2xl; font-weight: $font-weight-bold; color: var(--color-accent-primary); } .level-announcement { margin: 0; font-size: $font-size-lg; color: var(--color-text-primary); strong { color: var(--color-accent-primary); } } } // Features gained section .features-gained { @include flex-column; gap: $spacing-3; h3 { margin: 0; font-size: $font-size-lg; font-weight: $font-weight-semibold; color: var(--color-text-primary); } .feature-list { list-style: none; margin: 0; padding: 0; @include flex-column; gap: $spacing-2; } .feature-item { @include panel; padding: $spacing-3; background-color: var(--color-bg-secondary); &.has-effects { border-left: 3px solid var(--color-success); } .feature-header { @include flex-center; justify-content: flex-start; gap: $spacing-2; margin-bottom: $spacing-2; .feature-name { font-weight: $font-weight-semibold; color: var(--color-text-primary); } .feature-class { font-size: $font-size-sm; color: var(--color-text-muted); } .feature-auto { color: var(--color-success); font-size: $font-size-sm; i { font-size: $font-size-base; } } } .feature-description { font-size: $font-size-sm; color: var(--color-text-secondary); line-height: 1.5; p { margin: 0; } strong { color: var(--color-text-primary); } } } } // Choice features section .choice-features { @include flex-column; gap: $spacing-3; h3 { margin: 0; font-size: $font-size-lg; font-weight: $font-weight-semibold; color: var(--color-text-primary); } .choice-feature { @include panel; padding: $spacing-3; background-color: var(--color-bg-secondary); border-left: 3px solid var(--color-warning); .choice-label { @include flex-center; justify-content: flex-start; gap: $spacing-2; margin-bottom: $spacing-2; .feature-name { font-weight: $font-weight-semibold; color: var(--color-text-primary); } .feature-class { font-size: $font-size-sm; color: var(--color-text-muted); } } .feature-description { font-size: $font-size-sm; color: var(--color-text-secondary); margin-bottom: $spacing-3; p { margin: 0; } } .perk-choice-select { @include input-base; width: 100%; cursor: pointer; } } } // Perk selection section .perk-selection { @include flex-column; gap: $spacing-3; h3 { margin: 0; font-size: $font-size-lg; font-weight: $font-weight-semibold; color: var(--color-text-primary); } .perk-instruction { margin: 0; font-size: $font-size-sm; color: var(--color-text-secondary); } .perk-slot { @include panel; padding: $spacing-3; background-color: var(--color-bg-secondary); .perk-slot-label { display: block; font-weight: $font-weight-semibold; color: var(--color-text-primary); margin-bottom: $spacing-2; } .perk-select { @include input-base; width: 100%; cursor: pointer; option:disabled { color: var(--color-text-muted); } } } } // No features message .no-features { @include panel; padding: $spacing-4; text-align: center; background-color: var(--color-bg-secondary); p { margin: 0; color: var(--color-text-muted); font-style: italic; } } // Confirm button .dialog-buttons { margin-top: $spacing-2; .confirm-btn { @include button-primary; width: 100%; padding: $spacing-3; font-size: $font-size-lg; gap: $spacing-2; &:hover { transform: translateY(-1px); box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15); } } } }