/* PLT/CRM fixture v0.1 — 2026-08-21, 합성 데모 전용. 정본: research-development/crm/dev/ */
/* 데모 사본 전용 최소 커스텀. 전 규칙은 .af-crm-page[data-crm-page="reservations"] 하위로 한정하며
   global reset·기존 클래스 재정의는 하지 않는다. */

/* X-01 확장: 경로 badge 3종 (기존 상태 badge의 inline-style 패턴을 클래스 기반으로 추출) */
.af-crm-page[data-crm-page="reservations"] .route-badge {
    display: inline-block;
    padding: 2px 8px;
    border-radius: 8px;
    font-size: 12px;
    line-height: 1.4;
    white-space: nowrap;
}

.af-crm-page[data-crm-page="reservations"] .route-badge.route-afternoon {
    color: #0052CC;
    background: #E5EEFF;
}

.af-crm-page[data-crm-page="reservations"] .route-badge.route-direct {
    color: #424242;
    background: #EEEEEE;
}

.af-crm-page[data-crm-page="reservations"] .route-badge.route-crm {
    color: #6941C6;
    background: #F0EBFF;
    cursor: help; /* hover 툴팁(title 속성) 존재 힌트 */
}

/* 확장 시연용 사본 안내 줄 */
.af-crm-page[data-crm-page="reservations"] .af-crm-demo-note {
    margin-bottom: 12px;
    padding: 8px 12px;
    border-left: 4px solid #0052CC;
    background: #F4F7FE;
    color: #333333;
    font-size: 13px;
}

/* fixture_state=loading|error 표시 영역 */
.af-crm-page[data-crm-page="reservations"] .af-crm-fixture-error {
    margin-bottom: 12px;
    padding: 8px 12px;
    border: 1px solid #FFD591;
    background: #FFF7E6;
    color: #874D00;
    font-size: 13px;
}

/* '당일 발송' 표시 토글 라벨 정렬 */
.af-crm-page[data-crm-page="reservations"] .af-crm-toggle-wrap {
    display: inline-flex;
    align-items: center;
    vertical-align: middle;
}

.af-crm-page[data-crm-page="reservations"] .af-crm-toggle-wrap input[type="checkbox"] {
    margin: 0 4px 0 0;
}

/* 합성 처리 토스트 (버튼 클릭 등 실제 동작 대체 안내) */
.af-crm-page[data-crm-page="reservations"] .af-crm-toast {
    position: fixed;
    left: 50%;
    bottom: 32px;
    transform: translateX(-50%) translateY(8px);
    max-width: 80%;
    padding: 10px 18px;
    border-radius: 8px;
    background: rgba(33, 33, 33, 0.92);
    color: #FFFFFF;
    font-size: 13px;
    opacity: 0;
    pointer-events: none;
    transition: opacity 0.2s ease, transform 0.2s ease;
    z-index: 2000;
}

.af-crm-page[data-crm-page="reservations"] .af-crm-toast.is-visible {
    opacity: 1;
    transform: translateX(-50%) translateY(0);
}
