/* Forms and Buttons */
.icon-btn, .back-btn, .fab, #main-memo-btn, #fake-memo-add-btn, #memo-header-add-btn, #memo-header-edit-btn, #memo-header-search-btn, #memo-header-bulk-delete-btn, #memo-header-delete-confirm-btn, #scroll-date-label {
    color: var(--primary-color) !important;
}

.icon-btn svg, .back-btn svg, .fab svg, .dropdown-item svg, .ranking-icon svg {
    stroke: var(--primary-color) !important;
}

.icon-btn { background: none; border: none; font-size: 20px; cursor: pointer; min-height: 40px; min-width: 40px; display: flex; align-items: center; justify-content: center; padding: 4px; }

.back-btn { background: none; border: none; color: var(--text-main); font-size: 20px; cursor: pointer; display: flex; align-items: center; justify-content: center; min-height: 44px; min-width: 44px; }

.add-btn { cursor: pointer; font-size: 24px; font-weight: 300; color: var(--primary-color); display: flex; align-items: center; justify-content: center; }
.add-btn:hover { opacity: 0.8; }

.search-bar { display: flex; width: 100%; gap: 10px; }
.search-bar input { 
    flex: 1; padding: 10px 15px; border-radius: 20px; 
    border: 1px solid var(--border-color); 
    background: var(--bg-color); color: var(--text-main);
    outline: none; font-size: 14px; transition: border-color 0.2s;
}
.search-bar input:focus { border-color: var(--primary-color); }

.apply-btn {
    padding: 8px 16px;
    background: var(--primary-color);
    color: white;
    border: none;
    border-radius: 8px;
    font-size: 13px;
    font-weight: bold;
    cursor: pointer;
    transition: opacity 0.2s;
    white-space: nowrap;
}
.apply-btn:disabled { opacity: 0.5; cursor: not-allowed; }

/* AND/OR Toggle */
.search-mode-toggle {
    display: flex; background: var(--border-color); border-radius: 20px; padding: 2px; gap: 2px; align-self: center; margin-bottom: 10px;
}
.mode-btn {
    border: none; background: none; padding: 4px 12px; font-size: 11px; border-radius: 18px; cursor: pointer; color: var(--text-muted); transition: 0.2s;
}
.mode-btn.active { background: var(--surface-color); color: var(--text-main); box-shadow: 0 2px 4px rgba(0,0,0,0.1); }

/* Favorite Selection Mode */
.fav-item-checkbox { width: 22px; height: 22px; margin-right: 12px; display: none; }

/* Memo Search Input */
.memo-search-input {
    flex: 1 !important; width: auto !important; margin: 0 !important;
    padding: 10px 15px !important; border-radius: 20px !important;
    border: 1px solid var(--text-muted) !important;
    background: var(--surface-hover) !important;
    color: var(--text-main) !important; font-size: 14px !important; outline: none !important;
    box-sizing: border-box !important;
}

.memo-checkbox {
    width: 20px !important; height: 20px !important; margin: 0 !important;
    flex-shrink: 0 !important; cursor: pointer !important;
}
