/* application-management.css - 申博申请管理功能样式 */

/* 表单整体样式优化 */
#application-form {
    font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
    padding-top: 0 !important;
    margin-top: -8px !important;
}

/* 隐藏标题下方的分隔线 */
.px-6.py-5.border-b.border-neutral-200 {
    padding-bottom: 0 !important;
    margin-bottom: 0 !important;
    border-bottom: none !important;
}

/* 缩小分隔线与表单框之间的距离 */
.modal-content > div:nth-child(2) {
    padding-top: 8px !important;
    margin-top: 0 !important;
}

/* 优化模态框标题样式 */
.text-xl.font-semibold.text-neutral-900 {
    font-size: 18px !important;
    margin-bottom: 0 !important;
}

/* 优化模态框内部分隔线 */
.px-6.py-5.border-b.border-neutral-200 .border-b {
    margin-top: 8px !important;
    margin-bottom: 8px !important;
}

/* 字段容器样式优化 */
#application-form .bg-white.rounded-xl.shadow-sm.border {
    border-radius: 12px !important;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.05) !important;
}

/* 网格布局优化 */
#application-form .grid {
    gap: 0 !important;
}

#application-form .grid > div {
    padding: 16px !important;
    display: flex;
    flex-direction: column;
}

/* 标签样式优化 */
#application-form label.block {
    font-size: 13px;
    font-weight: 500;
    color: #374151;
    margin-bottom: 6px;
}

/* 必填字段标识优化 */
#application-form .text-danger.font-semibold {
    color: #ef4444;
    font-size: 13px;
}

/* 输入框、选择框样式优化 */
#application-form input[type="text"],
#application-form select,
#application-form textarea {
    border: 1px solid #d1d5db;
    border-radius: 8px !important;
    padding: 8px 12px !important;
    font-size: 14px;
    transition: all 0.2s ease;
    box-sizing: border-box;
    width: 100% !important;
    height: 42px !important;
}

/* 悬停状态 */
#application-form input[type="text"]:hover,
#application-form select:hover,
#application-form textarea:hover {
    border-color: #9ca3af;
}

/* 聚焦状态 */
#application-form input[type="text"]:focus,
#application-form select:focus,
#application-form textarea:focus {
    border-color: #3b82f6;
    box-shadow: 0 0 0 3px rgba(59, 130, 246, 0.15);
    outline: none;
}

/* 单选按钮样式优化 - 针对Tailwind CSS类覆盖问题 */
#application-form input[type="radio"] {
    width: 18px !important;
    height: 18px !important;
    border-radius: 50% !important;
    border: 2px solid #d1d5db;
    appearance: none;
    transition: all 0.2s ease;
    position: relative;
    display: inline-block;
}

#application-form input[type="radio"]:checked {
    border-color: #3b82f6 !important;
    background-color: #3b82f6 !important;
}

#application-form input[type="radio"]:checked::after {
    content: '' !important;
    position: absolute !important;
    top: 50% !important;
    left: 50% !important;
    transform: translate(-50%, -50%) !important;
    width: 8px !important;
    height: 8px !important;
    background-color: white !important;
    border-radius: 50% !important;
}

#application-form input[type="radio"]:hover {
    border-color: #9ca3af;
}

#application-form input[type="radio"]:focus {
    box-shadow: 0 0 0 3px rgba(59, 130, 246, 0.15);
}

/* 超具体选择器 - 确保覆盖Tailwind CSS的h-4 w-4类 */
#application-form label.inline-flex.items-center.cursor-pointer input[type="radio"].h-4.w-4 {
    width: 18px !important;
    height: 18px !important;
    border-radius: 50% !important;
    border: 2px solid #d1d5db !important;
    appearance: none !important;
    -webkit-appearance: none !important;
    -moz-appearance: none !important;
    transition: all 0.2s ease !important;
    position: relative !important;
    display: inline-block !important;
    box-sizing: content-box !important;
    margin: 0 !important;
    padding: 0 !important;
}

#application-form label.inline-flex.items-center.cursor-pointer input[type="radio"].h-4.w-4:checked {
    border-color: #3b82f6 !important;
    background-color: #3b82f6 !important;
}

#application-form label.inline-flex.items-center.cursor-pointer input[type="radio"].h-4.w-4:checked::after {
    content: '' !important;
    position: absolute !important;
    top: 50% !important;
    left: 50% !important;
    transform: translate(-50%, -50%) !important;
    width: 8px !important;
    height: 8px !important;
    background-color: white !important;
    border-radius: 50% !important;
}

/* 特定名称的单选按钮样式 - 增加优先级 */
#application-form input[type="radio"][name="contacted"] {
    width: 18px !important;
    height: 18px !important;
    border-radius: 50% !important;
}

/* 单选按钮标签样式 */
#application-form label.inline-flex {
    font-size: 14px;
    color: #374151;
    cursor: pointer;
    margin-right: 24px;
}

/* 单选按钮组布局优化 */
#application-form .flex.space-x-6 {
    display: flex;
    align-items: center;
    gap: 24px;
}

/* 日期选择器容器样式 */
#application-form .relative {
    position: relative;
}

/* 日期选择器日历图标样式 */
#application-form .absolute.right-3.top-1-2 {
    pointer-events: none;
    color: #6b7280;
}

/* 兼容Tailwind的top-1/2选择器 */
#application-form .absolute.right-3[class*="top-1/2"] {
    pointer-events: none;
    color: #6b7280;
}

/* 确保日历内部元素不会遮挡边框 */
.flatpickr-innerContainer,
.flatpickr-rContainer,
.flatpickr-dayContainer {
    border: none !important;
    box-shadow: none !important;
}

/* 添加日期选择器指向输入框的箭头 */
.flatpickr-calendar::after {
    content: '';
    position: absolute;
    top: 100%;
    left: 20px;
    width: 0;
    height: 0;
    border-left: 8px solid transparent;
    border-right: 8px solid transparent;
    border-top: 8px solid white;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.05);
}

/* 加载动画样式 */
.fa-spinner {
    animation: fa-spin 1s infinite linear;
}

@keyframes fa-spin {
    0% { transform: rotate(0deg); }
    100% { transform: rotate(360deg); }
}

/* 成功和危险按钮颜色 */
.bg-success {
    background-color: #10b981 !important;
}

.bg-danger {
    background-color: #ef4444 !important;
}

/* 备注文本框样式优化 */
#application-form textarea {
    resize: none;
    padding: 10px 12px !important;
    height: auto !important;
    min-height: 60px;
}



/* 按钮区域样式优化 */
#application-form .pt-2.flex.justify-end {
    padding: 16px 0 0 0;
    border-top: 1px solid #f3f4f6;
    margin-top: 8px;
    display: flex;
    justify-content: flex-end !important;
    gap: 8px;
}

/* 次要按钮样式（取消） - 统一从CSS文件引用，避免内联样式冲突 */

/* 主要按钮样式（保存） */
#application-form button[type="submit"] {
    background-color: #3b82f6;
    color: white;
    border: none;
    padding: 10px 20px;
    border-radius: 8px;
    font-size: 14px;
    font-weight: 600;
    cursor: pointer;
    transition: all 0.2s ease;
    box-shadow: 0 2px 4px rgba(59, 130, 246, 0.2);
}

#application-form button[type="submit"]:hover {
    background-color: #2563eb;
    box-shadow: 0 3px 6px rgba(59, 130, 246, 0.3);
    transform: translateY(-1px);
}

#application-form button[type="submit"]:active {
    background-color: #1d4ed8;
    transform: translateY(0);
}

/* 响应式调整 */
@media (max-width: 768px) {
    #application-form .grid-cols-1.md\:grid-cols-2 {
        grid-template-columns: 1fr !important;
    }

    #application-form .grid > div {
        padding: 12px !important;
    }

    #application-form input[type="text"],
    #application-form select,
    #application-form textarea {
        font-size: 13px;
    }
}