/*
 * OptionsPlay Shared Input Components
 * Source: Design System Spec Section 4.3
 * Replaces duplicated search input styles across widgets
 */

/* ===== SEARCH WRAPPER ===== */
.op-search-wrapper {
    position: relative;
    width: 100%;
}

.op-search-icon {
    position: absolute;
    left: 12px;
    top: 50%;
    transform: translateY(-50%);
    font-size: 16px;
    color: var(--op-neutral-500);
    pointer-events: none;
    z-index: 1;
}

.op-search-input ::deep input {
    background: var(--op-bg-search) !important;
    border: 1px solid var(--op-neutral-200) !important;
    border-radius: var(--op-radius-lg) !important;
    padding: var(--op-space-2) var(--op-space-4) var(--op-space-2) 40px !important;
    font-size: var(--op-text-base) !important;
}

.op-search-input ::deep input:focus {
    border-color: var(--op-brand-green-600) !important;
    box-shadow: 0 0 0 3px rgba(79, 122, 52, 0.1) !important;
}

/* ===== ADVANCED FILTERS PANEL ===== */
/* Shared panel that slides down — used in CreditSpread, CoveredCall, ShortPut, EarningsCalendar */
.op-filters-panel {
    margin-top: var(--op-space-4);
    padding: var(--op-space-4);
    background: var(--op-bg-secondary);
    border: 1px solid var(--op-border-default);
    border-radius: var(--op-radius-md);
    animation: op-slideDown 0.3s ease-out;
}

@keyframes op-slideDown {
    from {
        opacity: 0;
        max-height: 0;
        transform: translateY(-10px);
    }
    to {
        opacity: 1;
        max-height: 200px;
        transform: translateY(0);
    }
}
