/* ================================
   ACF Wrapper
================================= */
.acf-wrapper {
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif !important;
    max-width: 1200px !important;
    margin: 0 auto !important;
    box-sizing: border-box !important;
}

.acf-wrapper *,
.acf-wrapper *::before,
.acf-wrapper *::after {
    box-sizing: border-box !important;
}

/* ================================
   Inline Filter Bar
================================= */
.acf-wrapper .acf-filter-bar {
    display: flex !important;
    flex-direction: row !important;
    flex-wrap: wrap !important;
    align-items: center !important;
    gap: 15px !important;
    padding: 15px 20px !important;
    background: #fff !important;
    border: 2px solid #e0e0e0 !important;
    border-radius: 4px !important;
    margin-bottom: 20px !important;
}

.acf-wrapper .acf-filter-group {
    display: flex !important;
    flex-direction: row !important;
    align-items: center !important;
    gap: 10px !important;
}

.acf-wrapper .acf-filter-group label {
    font-weight: 500 !important;
    color: #333 !important;
    white-space: nowrap !important;
    display: inline-block !important;
}

.acf-wrapper .acf-filter-group input[type="text"],
.acf-wrapper input#acf-search {
    padding: 8px 12px !important;
    border: 1px solid #ccc !important;
    border-radius: 4px !important;
    min-width: 150px !important;
    display: inline-block !important;
    visibility: visible !important;
    opacity: 1 !important;
    height: auto !important;
    width: auto !important;
}

.acf-wrapper .acf-date-inputs {
    display: flex !important;
    flex-direction: row !important;
    align-items: center !important;
    gap: 8px !important;
}

.acf-wrapper .acf-date-inputs input[type="date"] {
    padding: 8px 10px !important;
    border: 1px solid #ccc !important;
    border-radius: 4px !important;
    display: inline-block !important;
}

.acf-wrapper .acf-date-separator {
    color: #666 !important;
    font-size: 14px !important;
}

.acf-wrapper .acf-apply-btn {
    padding: 8px 20px !important;
    background: #795548 !important;
    color: #fff !important;
    border: none !important;
    border-radius: 4px !important;
    cursor: pointer !important;
    font-weight: 500 !important;
    transition: background 0.2s !important;
}

.acf-wrapper .acf-apply-btn:hover {
    background: #EBD5B8 !important;
    color: #795548 !important;
}

.acf-wrapper .acf-clear-btn {
    padding: 8px 15px !important;
    background: transparent !important;
    color: #666 !important;
    border: 1px solid #ccc !important;
    border-radius: 4px !important;
    cursor: pointer !important;
    transition: all 0.2s !important;
}

.acf-wrapper .acf-clear-btn:hover {
    background: #f5f5f5 !important;
    border-color: #999 !important;
}

/* ================================
   Content Layout (Main + Sidebar)
================================= */
.acf-wrapper .acf-content-layout {
    display: flex !important;
    flex-direction: row !important;
    flex-wrap: nowrap !important;
    gap: 30px !important;
    align-items: flex-start !important;
}

.acf-wrapper .acf-main-content {
    flex: 1 1 0% !important;
    min-width: 0 !important;
    border: 2px solid #EBD5B8 !important;
    border-radius: 4px !important;
    padding: 20px !important;
    background: #fff !important;
    order: 1 !important;
}

.acf-wrapper .acf-sidebar {
    width: 280px !important;
    min-width: 280px !important;
    max-width: 280px !important;
    flex-shrink: 0 !important;
    order: 2 !important;
}

/* ================================
   Sidebar Widgets
================================= */
.acf-wrapper .acf-sidebar-widget {
    border: 2px solid #EBD5B8 !important;
    border-radius: 4px !important;
    padding: 15px !important;
    margin-bottom: 20px !important;
    background: #EBD5B8 !important;
}

.acf-wrapper .acf-sidebar-widget h4 {
    margin: 0 0 12px 0 !important;
    padding: 0 0 10px 0 !important;
    border-bottom: 1px solid #eee !important;
    font-size: 16px !important;
    color: #333 !important;
}

/* Calendar Widget */
.acf-wrapper .acf-calendar-header {
    display: flex !important;
    justify-content: space-between !important;
    align-items: center !important;
    margin-bottom: 10px !important;
    padding: 5px 0 !important;
}

.acf-wrapper .acf-cal-nav {
    background: none !important;
    border: 1px solid #fff !important;
    border-radius: 4px !important;
    width: 30px !important;
    height: 30px !important;
    cursor: pointer !important;
    font-size: 18px !important;
    color: #333 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    transition: all 0.2s !important;
}

.acf-wrapper .acf-cal-nav:hover {
    background: #f5f5f5 !important;
    border-color: #999 !important;
}

.acf-wrapper #acf-cal-month-year {
    font-weight: 600 !important;
    font-size: 14px !important;
    color: #333 !important;
}

.acf-wrapper .acf-view-month-link {
    display: block !important;
    text-align: center !important;
    margin-top: 10px !important;
    font-size: 12px !important;
    color: #795548 !important;
    text-decoration: underline !important;
    cursor: pointer !important;
}

.acf-wrapper .acf-view-month-link:hover {
    color: #5d4037 !important;
}

.acf-wrapper .acf-calendar-table {
    width: 100% !important;
    border-collapse: collapse !important;
    table-layout: fixed !important;
}

.acf-wrapper .acf-calendar-table th {
    padding: 8px 2px !important;
    text-align: center !important;
    font-size: 11px !important;
    font-weight: 600 !important;
    color: #666 !important;
    border-bottom: 1px solid #eee !important;
}

.acf-wrapper .acf-calendar-table td {
    padding: 6px 2px !important;
    text-align: center !important;
    font-size: 12px !important;
    cursor: default !important;
}

.acf-wrapper .acf-cal-day {
    cursor: pointer !important;
    border-radius: 4px !important;
    transition: all 0.15s !important;
}

.acf-wrapper .acf-cal-day:hover {
    background: #f0f0f0 !important;
}

.acf-wrapper .acf-cal-today {
    background: #e3f2fd !important;
    color: #1976d2 !important;
    font-weight: 600 !important;
}

.acf-wrapper .acf-cal-selected {
    background: #333 !important;
    color: #fff !important;
}

.acf-wrapper .acf-cal-selected:hover {
    background: #555 !important;
}

.acf-wrapper #acf-mini-calendar {
    font-size: 13px !important;
}

/* Recent Posts Widget */
.acf-wrapper .acf-recent-list {
    list-style: none !important;
    margin: 0 !important;
    padding: 0 !important;
}

.acf-wrapper .acf-recent-list li {
    padding: 8px 0 !important;
    border-bottom: 1px solid #f0f0f0 !important;
    list-style: none !important;
}

.acf-wrapper .acf-recent-list li:last-child {
    border-bottom: none !important;
}

.acf-wrapper .acf-recent-list a {
    color: #333 !important;
    text-decoration: none !important;
    font-size: 14px !important;
    display: block !important;
    margin-bottom: 3px !important;
    line-height: 1.5;
}

.acf-wrapper .acf-recent-list a:hover {
    color: #666 !important;
}

.acf-wrapper .acf-recent-date {
    font-size: 12px !important;
    color: #999 !important;
}

/* Tags Widget - Dropdown Multiselect */
.acf-wrapper #acf-tags-dropdown {
    width: 100% !important;
    min-height: 120px !important;
    padding: 8px !important;
    border: 1px solid #ccc !important;
    border-radius: 4px !important;
    font-size: 13px !important;
    background: #fff !important;
    cursor: pointer !important;
}

.acf-wrapper #acf-tags-dropdown option {
    padding: 6px 8px !important;
    border-radius: 3px !important;
    margin-bottom: 2px !important;
}

.acf-wrapper #acf-tags-dropdown option:checked {
    background: #333 linear-gradient(0deg, #333 0%, #333 100%) !important;
    color: #fff !important;
}

.acf-wrapper #acf-tags-dropdown option:hover {
    background: #f5f5f5 !important;
}

.acf-wrapper .acf-tags-widget {
    display: block !important;
}

/* ================================
   Post Results
================================= */
.acf-wrapper .acf-post {
    padding: 15px 0 !important;
    border-bottom: 1px solid #eee !important;
}

.acf-wrapper .acf-post:last-child {
    border-bottom: none !important;
}

.acf-wrapper .acf-post-row {
    display: flex !important;
    flex-direction: row !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 15px !important;
}

.acf-wrapper .acf-post-title {
    flex: 1 !important;
    min-width: 0 !important;
}

.acf-wrapper .acf-post h4 {
    margin: 0 !important;
    font-size: 18px !important;
}

.acf-wrapper .acf-view-btn {
    display: inline-block !important;
    padding: 8px 16px !important;
    background: #795548 !important;
    color: #fff !important;
    text-decoration: none !important;
    border-radius: 4px !important;
    font-size: 14px !important;
    font-weight: 500 !important;
    white-space: nowrap !important;
    transition: background 0.2s !important;
}

.acf-wrapper .acf-view-btn:hover {
    background: #5d4037 !important;
    color: #fff !important;
}

.acf-wrapper .acf-post-link {
    color: #333 !important;
    text-decoration: none !important;
}

.acf-wrapper .acf-post-link:hover {
    color: #666 !important;
}

.acf-wrapper .acf-post-date {
    margin: 5px 0 0 0 !important;
    color: #888 !important;
    font-size: 14px !important;
}

.acf-wrapper .acf-no-posts {
    color: #666 !important;
    text-align: center !important;
    padding: 40px 0 !important;
}
/* ================================
   Toggle Icon Base (for collapsible widgets)
================================= */
.acf-wrapper .acf-toggle-icon {
    display: none;
    flex-shrink: 0;
}
/* ================================
   Responsive Design
================================= */
@media (max-width: 900px) {
    .acf-wrapper .acf-content-layout {
        flex-direction: column !important;
    }
    
    .acf-wrapper .acf-sidebar {
        width: 100% !important;
        min-width: 100% !important;
        max-width: 100% !important;
        order: 1 !important;
    }
    
    .acf-wrapper .acf-main-content {
        order: 2 !important;
    }
}

@media (max-width: 768px) {
    .acf-wrapper .acf-filter-bar {
        flex-direction: column !important;
        align-items: stretch !important;
    }
    
    .acf-wrapper .acf-post-row {
        flex-direction: column !important;
        align-items: flex-start !important;
        gap: 10px !important;
    }
    
    .acf-wrapper .acf-filter-group {
        flex-direction: column !important;
        align-items: flex-start !important;
    }
    
    .acf-wrapper .acf-filter-group input[type="text"],
    .acf-wrapper input#acf-search {
        width: 100% !important;
    }
    
    .acf-wrapper .acf-date-inputs {
        flex-wrap: wrap !important;
        width: 100% !important;
    }
    
    .acf-wrapper .acf-date-inputs input[type="date"] {
        flex: 1 !important;
        min-width: 120px !important;
    }
    
    /* Collapsible Widgets for Mobile */
    .acf-wrapper .acf-widget-toggle {
        cursor: pointer !important;
        display: flex !important;
        justify-content: space-between !important;
        align-items: center !important;
        margin-bottom: 0 !important;
        padding-bottom: 0 !important;
        border-bottom: none !important;
    }
    
    .acf-wrapper .acf-toggle-icon {
        display: inline-block !important;
        width: 16px !important;
        height: 16px !important;
        position: relative !important;
        transition: transform 0.3s ease !important;
    }
    
    .acf-wrapper .acf-toggle-icon::before {
        content: '' !important;
        position: absolute !important;
        width: 8px !important;
        height: 8px !important;
        border-right: 2px solid #333 !important;
        border-bottom: 2px solid #333 !important;
        top: 50% !important;
        left: 50% !important;
        transform: translate(-50%, -70%) rotate(45deg) !important;
        transition: transform 0.3s ease !important;
    }
    
    .acf-wrapper .acf-collapsible.acf-expanded .acf-toggle-icon::before {
        transform: translate(-50%, -30%) rotate(-135deg) !important;
    }
    
    .acf-wrapper .acf-widget-content {
        max-height: 0 !important;
        overflow: hidden !important;
        transition: max-height 0.3s ease, padding 0.3s ease !important;
        padding-top: 0 !important;
    }
    
    .acf-wrapper .acf-collapsible.acf-expanded .acf-widget-content {
        max-height: 500px !important;
        padding-top: 12px !important;
    }
    
    .acf-wrapper .acf-collapsible.acf-expanded .acf-widget-toggle {
        margin-bottom: 0 !important;
        padding-bottom: 10px !important;
        border-bottom: 1px solid #eee !important;
    }
}

/* Desktop: Always show widget content */
@media (min-width: 769px) {
    .acf-wrapper .acf-toggle-icon {
        display: none !important;
    }
    
    .acf-wrapper .acf-widget-content {
        max-height: none !important;
        overflow: visible !important;
    }
}
/* ================================
   TODAY'S REFLECTION SECTION
================================= */
.acf-wrapper .acf-today-section {
    background: linear-gradient(135deg, #FFF8E7 0%, #FFE8CC 100%) !important;
    border: 3px solid #B8860B !important;
    border-radius: 8px !important;
    padding: 20px !important;
    margin-bottom: 25px !important;
    box-shadow: 0 4px 6px rgba(184, 134, 11, 0.15) !important;
}
.acf-today-section{
    border: 4px solid #dea895;
    padding: 15px 15px 4px 15px;
    border-radius: 4px;
}
.acf-wrapper .acf-today-header {
    text-align: center !important;
    margin-bottom: 15px !important;
}

.acf-wrapper .acf-today-label {
    display: inline-block !important;
    background: #B8860B !important;
    color: #fff !important;
    padding: 6px 12px !important;
    font-size: 11px !important;
    font-weight: 700 !important;
    letter-spacing: 1px !important;
    border-radius: 3px !important;
    text-transform: uppercase !important;
}

.acf-wrapper .acf-today-post {
    background: #fff !important;
    border: 2px solid #D4AF37 !important;
    border-radius: 4px !important;
    padding: 12px !important;
}

.acf-wrapper .acf-today-post .acf-post-title h4 {
    color: #8B4513 !important;
    font-weight: 600 !important;
}

.acf-wrapper .acf-no-today-posts {
    background: linear-gradient(135deg, #FFE8CC 0%, #FFF8E7 100%) !important;
}

.acf-wrapper .acf-no-posts-today {
    text-align: center !important;
    color: #B8860B !important;
    font-weight: 500 !important;
    padding: 10px 0 !important;
    margin: 0 !important;
    font-size: 14px !important;
}

/* ================================
   DATE GROUPED POSTS
================================= */
.acf-wrapper .acf-posts-list {
    margin-top: 20px !important;
}

.acf-wrapper .acf-date-group {
    margin-bottom: 20px !important;
}

.acf-wrapper .acf-date-header {
    background: #f5f5f5 !important;
    border-left: 4px solid #795548 !important;
    padding: 12px 15px !important;
    font-weight: 600 !important;
    color: #333 !important;
    font-size: 14px !important;
    margin-bottom: 12px !important;
    border-radius: 2px !important;
}

.acf-wrapper .acf-date-group .acf-post {
    margin-bottom: 10px !important;
}

.acf-wrapper .acf-date-group .acf-post-date {
    display: none !important;
}