/**
 * ============================================================
 * 今日生日 子页面独有样式（todaywork/birthday.blade.php）
 * 运行在"今日工作台"父框架下：所有选择器以 .birthday-container 为前缀，
 * 与父框架及其他子页面样式隔离，不污染父框架
 * ============================================================
 */
.birthday-container {
    padding: 20px;
}

/* ----- 卡片头部 ----- */
.birthday-container .bd-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 16px 20px;
    border-bottom: 1px solid #f0f0f0;
    background: linear-gradient(135deg, #fafbfc 0%, #fff 100%);
}
.birthday-container .bd-title {
    display: flex;
    align-items: center;
    font-size: 15px;
    font-weight: 600;
    color: #1f2937;
}
.birthday-container .bd-title i {
    margin-right: 8px;
    color: #fa8c16;
    font-size: 18px;
}
.birthday-container .bd-subtitle {
    font-size: 12px;
    color: #888;
    font-weight: normal;
    margin-left: 12px;
}
.birthday-container .bd-count {
    color: #fa8c16;
}

/* ----- 筛选栏 ----- */
.birthday-container .bd-filter-bar {
    padding: 15px 20px;
    border-bottom: 1px solid #f0f0f0;
    background: #fafbfc;
    display: flex;
    align-items: center;
    gap: 10px;
    flex-wrap: wrap;
}
.birthday-container .bd-filter-item {
    display: flex;
    align-items: center;
    gap: 6px;
}
.birthday-container .bd-filter-item .bd-search-wrap {
    position: relative;
}
.birthday-container .bd-filter-item .bd-search-wrap i {
    position: absolute;
    left: 10px;
    top: 50%;
    transform: translateY(-50%);
    color: #bbb;
    font-size: 13px;
}
.birthday-container .bd-search-input {
    width: 220px;
    height: 32px;
    font-size: 13px;
    border-radius: 4px;
    border: 1px solid #e5e7eb;
    background: #fff;
    padding: 0 12px 0 32px;
}
.birthday-container .bd-search-input:focus {
    border-color: #1890ff;
    box-shadow: 0 0 0 3px rgba(24, 144, 255, 0.1);
    outline: none;
}
.birthday-container .bd-filter-actions {
    margin-left: auto;
}
.birthday-container .bd-btn-reset,
.birthday-container .bd-btn-query {
    height: 32px;
    padding: 0 14px;
    font-size: 13px;
    border-radius: 4px;
    display: inline-flex;
    align-items: center;
    gap: 4px;
    cursor: pointer;
}
.birthday-container .bd-btn-reset {
    background: #fff;
    color: #666;
    border: 1px solid #e5e7eb;
}
.birthday-container .bd-btn-reset:hover {
    color: #1890ff;
    border-color: #1890ff;
    background: #e6f7ff;
}
.birthday-container .bd-btn-query {
    background: #1890ff;
    color: #fff;
    border: 1px solid #1890ff;
}
.birthday-container .bd-btn-query:hover {
    background: #40a9ff;
    border-color: #40a9ff;
    color: #fff;
}

/* ----- 表格容器 ----- */
.birthday-container .bd-table-wrapper {
    flex: 1;
    overflow: auto;
    max-height: calc(100vh - 330px);
    position: relative;
}
.birthday-container .bd-table-wrapper::-webkit-scrollbar {
    width: 6px;
    height: 6px;
}
.birthday-container .bd-table-wrapper::-webkit-scrollbar-thumb {
    background: #d9d9d9;
    border-radius: 3px;
}

.birthday-container .bd-table {
    margin-bottom: 0;
    font-size: 12px;
    width: max-content;
    min-width: 100%;
}
.birthday-container .bd-table thead th {
    background: #fafafa;
    border-bottom: 1px solid #f0f0f0;
    font-weight: 500;
    color: #666;
    padding: 10px 8px;
    white-space: nowrap;
    text-align: center;
    position: sticky;
    top: 0;
    z-index: 3;
}
.birthday-container .bd-table tbody td {
    padding: 10px 8px;
    border-bottom: 1px solid #f0f0f0;
    vertical-align: middle;
    white-space: nowrap;
    text-align: center;
}
.birthday-container .bd-table tbody tr:hover td {
    background: #fafafa;
}
.birthday-container .bd-table tbody td.bd-text-left {
    text-align: left;
}

/* ----- 患者信息单元格 ----- */
.birthday-container .bd-patient-cell {
    display: flex;
    align-items: center;
    gap: 10px;
}
.birthday-container .bd-patient-avatar {
    width: 32px;
    height: 32px;
    border-radius: 50%;
    background: #e6f7ff;
    color: #1890ff;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 14px;
    font-weight: 600;
    flex-shrink: 0;
}
.birthday-container .bd-patient-avatar.bd-female {
    background: #fff0f6;
    color: #eb2f96;
}
.birthday-container .bd-patient-name {
    font-weight: 600;
    color: #1f2937;
    font-size: 13px;
}
.birthday-container .bd-patient-meta {
    font-size: 11px;
    color: #999;
    margin-top: 2px;
}

/* ----- 金额列 ----- */
.birthday-container .bd-amount {
    font-weight: 600;
    color: #fa8c16;
}
.birthday-container .bd-amount-empty {
    color: #ccc;
}

/* ----- 备注列 ----- */
.birthday-container .bd-remark {
    max-width: 200px;
    overflow: hidden;
    text-overflow: ellipsis;
    color: #666;
}

/* ----- 空状态 ----- */
.birthday-container .bd-empty {
    text-align: center;
    padding: 40px;
    color: #999;
}
.birthday-container .bd-empty i {
    font-size: 32px;
    display: block;
    margin-bottom: 8px;
}

/* ----- 分页 ----- */
.birthday-container .bd-pagination-bar {
    padding: 12px 20px;
    border-top: 1px solid #f0f0f0;
    background: #fff;
    display: flex;
    align-items: center;
    justify-content: space-between;
}
.birthday-container .bd-page-info {
    font-size: 12px;
    color: #999;
}
.birthday-container .bd-pagination-bar .pagination {
    margin: 0;
}
.birthday-container .bd-pagination-bar .page-link {
    padding: 4px 10px;
    font-size: 12px;
    border-radius: 4px;
    color: #666;
    border: 1px solid #e5e7eb;
}
.birthday-container .bd-pagination-bar .page-item.active .page-link {
    background: #1890ff;
    border-color: #1890ff;
    color: #fff;
}
