/* ========== 统一简历生成模态框 (ResumeGenerateModal) ========== */
.rgen-modal { max-width: 560px; }
.rgen-modal .modal-body { padding: var(--spacing-6); }
.rgen-basic-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: var(--spacing-4);
}
.rgen-skill-tags {
    display: flex;
    flex-wrap: wrap;
    gap: var(--spacing-2);
    margin-top: var(--spacing-2);
}
.rgen-skill-tag {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 4px var(--spacing-2);
    background: var(--color-primary-100);
    color: var(--color-primary);
    border-radius: var(--radius-full);
    font-size: var(--text-xs);
}
.rgen-skill-tag .fa-times { cursor: pointer; opacity: .7; }
.rgen-skill-tag .fa-times:hover { opacity: 1; }
.rgen-note {
    margin: 0 0 var(--spacing-4);
    padding: var(--spacing-2) var(--spacing-3);
    font-size: var(--text-xs);
    color: var(--text-tertiary);
    background: var(--color-primary-50, rgba(8,145,178,.08));
    border-radius: var(--radius-md);
}
.rgen-loading { text-align: center; padding: var(--spacing-6) 0; }
.rgen-skeleton {
    width: 60%;
    height: 14px;
    margin: 0 auto;
    border-radius: var(--radius-sm);
    background: linear-gradient(90deg, rgba(8,145,178,.08) 25%, rgba(8,145,178,.16) 37%, rgba(8,145,178,.08) 63%);
    background-size: 400% 100%;
    animation: shimmer 1.4s ease infinite;
}
.rgen-skeleton.short { width: 40%; }
.rgen-skeleton-line { margin-top: var(--spacing-3); }
.rgen-loading-title { margin-top: var(--spacing-4); font-size: var(--text-base); font-weight: var(--font-semibold); color: var(--text-primary); }
.rgen-loading-stage { margin-top: var(--spacing-2); font-size: var(--text-sm); color: var(--text-tertiary); }
.rgen-loading-progress { margin-top: var(--spacing-3); font-size: var(--text-xs); color: var(--text-tertiary); text-align: center; }
@keyframes shimmer { 0% { background-position: 100% 0; } 100% { background-position: -100% 0; } }
.rgen-confirm-btn { background: var(--gradient-primary); color: #fff; border: none; padding: var(--spacing-3) var(--spacing-6); border-radius: var(--radius-md); font-size: var(--text-sm); font-weight: var(--font-semibold); cursor: pointer; display: inline-flex; align-items: center; gap: var(--spacing-2); transition: all var(--transition-fast); }
.rgen-confirm-btn:hover { box-shadow: var(--glow-primary); transform: translateY(-1px); }
.rgen-confirm-btn:disabled { opacity: .5; cursor: not-allowed; transform: none; box-shadow: none; }
@media (max-width: 640px) {
    .rgen-basic-grid { grid-template-columns: 1fr; }
}