/* ==========================================
                   公共样式（所有页面共享）
                   ========================================== */
.lu-bootstrap .gongji_schedule_container .gj-method-item { min-width: 120px; text-align: center; }
.lu-bootstrap .gongji_schedule_container .gj-date-item { border-radius: 8px; padding: 12px 8px; text-align: center; background: #f8f9fa; border: 2px solid #dee2e6; min-height: 80px; display: flex; flex-direction: column; align-items: center; justify-content: center; cursor: pointer; transition: all 0.15s; }
.lu-bootstrap .gongji_schedule_container .gj-date-item:hover { transform: translateY(-2px); box-shadow: 0 4px 8px rgba(0, 0, 0, 0.05); }
.lu-bootstrap .gongji_schedule_container .gj-date-item.gj-active { border-color: #0d6efd; background-color: #e7f1ff; }
.lu-bootstrap .gongji_schedule_container .gj-date-item .gj-date-top { font-size: 13.6px; color: #6c757d; margin-bottom: 2px; }
.lu-bootstrap .gongji_schedule_container .gj-date-item.gj-active .gj-date-top { color: #0d6efd; }
.lu-bootstrap .gongji_schedule_container .gj-date-item .gj-date-day { font-size: 32px; font-weight: 700; color: #212529; line-height: 1.2; }
.lu-bootstrap .gongji_schedule_container .gj-date-item.gj-active .gj-date-day { color: #1d4ed8; }
.lu-bootstrap .gongji_schedule_container .gj-hour-block { border: 1px solid #e9ecef; border-radius: 8px; padding: 12px 16px; margin-bottom: 16px; background: #fafcff; }
.lu-bootstrap .gongji_schedule_container .gj-hour-header { font-weight: 600; user-select: none; display: flex; align-items: center; justify-content: space-between; flex-wrap: wrap; gap: 8px; }
.lu-bootstrap .gongji_schedule_container .gj-slot { background: #f8f9fa; border: 1px solid #dee2e6; border-radius: 8px; padding: 8px 4px; text-align: center; font-weight: 500; user-select: none; cursor: pointer; transition: all 0.15s; }
.lu-bootstrap .gongji_schedule_container .gj-slot:hover { background: #e9ecef; transform: translateY(-2px); }
.lu-bootstrap .gongji_schedule_container .gj-slot.gj-selected { background: #198754; border-color: #157347; color: #fff; box-shadow: 0 4px 8px rgba(25, 135, 84, 0.3); }
.lu-bootstrap .gongji_schedule_container .gj-slot.gj-selected:hover { background: #157347; }
.lu-bootstrap .gongji_schedule_container .gj-slot.gj-selected .gj-slot-methods { color: #fff !important; }
.lu-bootstrap .gongji_schedule_container .gj-slot .gj-slot-methods { font-size: 11px; color: #6c757d; margin-top: 2px; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; max-width: 100%; }
.lu-bootstrap .gongji_schedule_container .gj-step-panel { display: none; }
.lu-bootstrap .gongji_schedule_container .gj-step-panel.gj-active { display: block;}
.lu-bootstrap .gongji_schedule_container .gj-modify,
.lu-bootstrap .gongji_schedule_container .gj-appointment,
.lu-bootstrap .gongji_schedule_container .gj-step-panel .gj-actions {position: fixed;width: 100%;bottom: 15px;left: 0; background: #fff;padding: 0 15px;}
.lu-bootstrap .gongji_schedule_container .gj-step-indicator .gj-step-num { display: inline-block; width: 32px; height: 32px; line-height: 32px; text-align: center; border-radius: 50%; background: #dee2e6; color: #495057; font-weight: 700; margin-right: 8px; }
.lu-bootstrap .gongji_schedule_container .gj-step-indicator.gj-active .gj-step-num { background: #0d6efd; color: #fff; }
.lu-bootstrap .gongji_schedule_container .gj-step-indicator.gj-active { color: #0d6efd; font-weight: 600; }
.lu-bootstrap .gongji_schedule_container .gj-step-line { flex: 1; height: 2px; background: #dee2e6; min-width: 20px; }
.lu-bootstrap .gongji_schedule_container .gj-group-title { cursor: default; display: flex; align-items: center; justify-content: space-between; flex-wrap: wrap; gap: 8px; }
.lu-bootstrap .gongji_schedule_container .gj-group-title .gj-group-title-left { cursor: pointer; user-select: none; }
.lu-bootstrap .gongji_schedule_container .gj-group-title .gj-toggle-btn { padding: 0;border: 0; background: transparent; font-size: 14px; cursor: pointer; }
.lu-bootstrap .gongji_schedule_container .gj-group-title .gj-icon-btn { padding: 0; background: transparent; font-size: 14px; cursor: pointer; }
.lu-bootstrap .gongji_schedule_container .gj-hour-header .gj-icon-btn { padding: 0; background: transparent; font-size: 14px; cursor: pointer; }
.lu-bootstrap .gongji_schedule_container .gj-rest-note { font-size: 0.85rem; color: #6c757d; border-top: 1px dashed #dee2e6; padding-top: 16px; margin-top: 16px; }
.lu-bootstrap .gongji_schedule_container h2 { letter-spacing: 1px; }
.lu-bootstrap .gongji_schedule_container .gj-booked {text-decoration: line-through;cursor: not-allowed;opacity: 0.6;}
@media (max-width: 992px) { .lu-bootstrap .gongji_schedule_container .gj-step-indicator .gj-step-num { width: 20px; height: 20px; line-height: 20px; } }
@media (max-width: 576px) { .lu-bootstrap .gongji_schedule_container .gj-slot { font-size: 13px; padding: 6px 2px; } }

/* ==========================================
           编辑专属样式
           ========================================== */
.lu-bootstrap #gongji_schedule_edit.gongji_schedule_container .gj-method-item { cursor: pointer; transition: all 0.15s; }
.lu-bootstrap #gongji_schedule_edit.gongji_schedule_container .gj-method-item:hover { transform: translateY(-2px); box-shadow: 0 4px 8px rgba(0, 0, 0, 0.05); }
.lu-bootstrap #gongji_schedule_edit.gongji_schedule_container .gj-method-item.gj-active { border-color: #0d6efd; background-color: #e7f1ff; color: #0d6efd; }
.lu-bootstrap #gongji_schedule_edit.gongji_schedule_container .gj-date-item { cursor: pointer; transition: all 0.15s; }
.lu-bootstrap #gongji_schedule_edit.gongji_schedule_container .gj-date-item:hover { transform: translateY(-2px); box-shadow: 0 4px 8px rgba(0, 0, 0, 0.05); }
.lu-bootstrap #gongji_schedule_edit.gongji_schedule_container .gj-date-item.gj-disabled{opacity: .5;cursor: not-allowed;pointer-events: none;}
.lu-bootstrap #gongji_schedule_edit.gongji_schedule_container .gj-date-item.gj-active { border-color: #0d6efd; background-color: #e7f1ff; }
.lu-bootstrap #gongji_schedule_edit.gongji_schedule_container .gj-date-item.gj-active .gj-date-top { color: #0d6efd; }
.lu-bootstrap #gongji_schedule_edit.gongji_schedule_container .gj-date-item.gj-active .gj-date-day { color: #1d4ed8; }
.lu-bootstrap #gongji_schedule_edit.gongji_schedule_container .gj-hour-header { cursor: pointer; }
.lu-bootstrap #gongji_schedule_edit.gongji_schedule_container .gj-slot { cursor: pointer; transition: all 0.15s; }
.lu-bootstrap #gongji_schedule_edit.gongji_schedule_container .gj-slot:hover { background: #e9ecef; transform: translateY(-2px); }
.lu-bootstrap #gongji_schedule_edit.gongji_schedule_container .gj-slot.gj-selected { background: #198754; border-color: #157347; color: #fff; box-shadow: 0 4px 8px rgba(25, 135, 84, 0.3); }
.lu-bootstrap #gongji_schedule_edit.gongji_schedule_container .gj-slot.gj-selected:hover { background: #157347; }
.lu-bootstrap #gongji_schedule_edit.gongji_schedule_container .gj-actions .gj-btn { min-width: 120px; }

/* ==========================================
           只读专属样式
           ========================================== */
.lu-bootstrap #gongji_schedule_view.gongji_schedule_container .gj-method-item { cursor: default; }
.lu-bootstrap #gongji_schedule_view.gongji_schedule_container .gj-date-item { cursor: default; }
.lu-bootstrap #gongji_schedule_view.gongji_schedule_container .gj-hour-header { cursor: default; }
.lu-bootstrap #gongji_schedule_view.gongji_schedule_container .gj-slot { cursor: default; }
.lu-bootstrap #gongji_schedule_view.gongji_schedule_container .gj-slot.gj-available { background: #e8f5e9; border-color: #a5d6a7; color: #2e7d32; }
.lu-bootstrap #gongji_schedule_view.gongji_schedule_container .gj-slot.gj-booked { background: #f5f5f5; border-color: #e0e0e0; color: #9e9e9e; text-decoration: line-through; }
.lu-bootstrap #gongji_schedule_view.gongji_schedule_container .gj-slot.gj-booked .gj-slot-methods { color: #9e9e9e; }

/* ==========================================
           方法选择弹窗（全局样式）
           ========================================== */
.method-picker-overlay { position: fixed; top: 0; left: 0; width: 100%; height: 100%; background: rgba(0, 0, 0, 0.5); z-index: 9999; display: flex; align-items: center; justify-content: center; }
.method-picker-modal { background: #fff; border-radius: 12px; padding: 24px; max-width: 400px; width: 90%; box-shadow: 0 8px 30px rgba(0, 0, 0, 0.3); }


/* ==========================================
           预约
           ========================================== */
/* 1. 咨询方式禁用状态 */.lu-bootstrap #gongji-appointment.gongji_schedule_container .gj-method-item.gj-disabled {opacity:0.4;cursor:not-allowed;}
/* 2. 日期禁用状态 */.lu-bootstrap #gongji-appointment.gongji_schedule_container .gj-date-item.gj-disabled {opacity:0.4;cursor:not-allowed;pointer-events:none;}
/* 3. 隐藏分组图标（预约页面不需要） */.lu-bootstrap #gongji-appointment.gongji_schedule_container .gj-hour-header .gj-icon {display:none;}
/* 4. 时间段选中状态（购物车） */.lu-bootstrap #gongji-appointment.gongji_schedule_container .gj-slot.gj-selected {background:#198754;border-color:#157347;color:#fff;box-shadow:0 4px 8px rgba(25,135,84,0.3);}
/* 5. 时间段禁用状态（达上限） */.lu-bootstrap #gongji-appointment.gongji_schedule_container .gj-slot.gj-disabled {opacity:0.4;cursor:not-allowed;}
/* 6. 购物车条目样式 */.lu-bootstrap #gongji-appointment.gongji_schedule_container .gj-cart-item {background:#f8f9fa;border-radius:6px;padding:6px 12px;margin-bottom:6px;display:flex;justify-content:space-between;align-items:center;}
/* 7. 购物车移除按钮 */.lu-bootstrap #gongji-appointment.gongji_schedule_container .gj-cart-item .gj-cart-remove {cursor:pointer;color:#dc3545;font-weight:bold;margin-left:8px;}
/* 9. 频率限制提示 */.lu-bootstrap #gongji-appointment.gongji_schedule_container .gj-frequency-info {font-size:0.9rem;color:#6c757d;}
/* 10. 咨询方式基础样式增强（旧CSS仅有 min-width 和 text-align） */.lu-bootstrap #gongji-appointment.gongji_schedule_container .gj-method-item {min-width:100px;/* 旧CSS为120px */    padding:8px 20px;/* 新增 */    border-radius:30px;/* 新增 */    background:#fff;/* 新增 */    font-weight:500;/* 新增 */}
/* 11. 日期基础样式增强（新增 min-width） */.lu-bootstrap #gongji-appointment.gongji_schedule_container .gj-date-item {min-width:70px;/* 新增 */}
.lu-bootstrap #gongji-appointment.gongji_schedule_container .gj-method-item {
    min-width: 100px;
    text-align: center;
    cursor: pointer;
    transition: all 0.15s;
    padding: 8px 20px;
    border: 2px solid #dee2e6;
    border-radius: 10px;
    background: #fff;
    font-weight: 500;
}
.lu-bootstrap #gongji-appointment.gongji_schedule_container .gj-method-item.gj-active {
    border-color: #0d6efd;
    background-color: #e7f1ff;
    color: #0d6efd;
}
.lu-bootstrap #gongji-appointment.gongji_schedule_container .gj-slot.gj-available {
    background: #e8f5e9;
    border-color: #a5d6a7;
    color: #2e7d32;
}