body { font-family: -apple-system, BlinkMacSystemFont, 'San Francisco', 'Helvetica Neue', Arial, sans-serif; }
.glass { backdrop-filter: blur(20px); background: rgba(255, 255, 255, 0.8); }
.btn { @apply px-6 py-3 rounded-2xl font-medium transition-all duration-200 transform hover:scale-105; }
.btn-primary { @apply bg-blue-600 hover:bg-blue-700 text-white; }
.btn-secondary { @apply bg-gray-100 hover:bg-gray-200 text-gray-800; }
.card { @apply bg-white rounded-3xl shadow-lg p-6 border border-gray-200; }

/* 页面切换样式 */
.page-content { display: none; }
.page-content.active { display: block; }
.nav-btn { transition: all 0.2s ease; }
.nav-btn.active { 
    color: #2563eb !important; 
    border-bottom-color: #2563eb !important; 
    font-weight: 600;
}

/* 文件上传样式 */
.upload-area {
    border: 2px dashed #d1d5db;
    transition: all 0.2s ease;
}
.upload-area.dragover {
    border-color: #2563eb;
    background-color: #eff6ff;
}

/* AI输出查看器样式 */
.ai-output-viewer {
    max-height: 500px;
    overflow-y: auto;
}
.analysis-step {
    border-left: 3px solid #e5e7eb;
    transition: all 0.2s ease;
}
.analysis-step.expanded {
    border-left-color: #2563eb;
    background-color: #f8fafc;
}

/* 岗位卡片展开面板样式 */
.job-details-panel, .job-analysis-panel {
    transition: all 0.3s ease-in-out;
    overflow: hidden;
}

.job-details-panel.hidden, .job-analysis-panel.hidden {
    max-height: 0;
    opacity: 0;
    margin-top: 0;
    margin-bottom: 0;
}

.job-details-panel:not(.hidden), .job-analysis-panel:not(.hidden) {
    max-height: 1000px;
    opacity: 1;
    margin-top: 1rem;
    margin-bottom: 0;
}

/* 按钮悬停效果优化 */
.card button[onclick*="toggle"] {
    transition: all 0.2s ease-in-out;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
}

.card button[onclick*="toggle"]:hover {
    transform: translateY(-1px);
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.15);
}

/* 投递建议标签样式 */
.application-advice-tag {
    transition: all 0.2s ease;
}

.application-advice-tag:hover {
    transform: scale(1.05);
}

/* 技能标签样式 */
.skill-tag {
    transition: all 0.2s ease;
}

.skill-tag:hover {
    transform: scale(1.05);
    filter: brightness(0.95);
}

/* 面板展开动画关键帧 */
@keyframes fadeInUp {
    from {
        opacity: 0;
        transform: translateY(10px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

.job-details-panel:not(.hidden), .job-analysis-panel:not(.hidden) {
    animation: fadeInUp 0.3s ease-out;
}

/* 响应式优化 */
@media (max-width: 768px) {
    .card button[onclick*="toggle"] {
        font-size: 0.75rem;
        padding: 0.5rem 0.75rem;
    }
    
    .grid.grid-cols-2 {
        grid-template-columns: 1fr;
        gap: 1rem;
    }
}
