/* DatePicker Atom - Custom date selector with toggle dropdown and CalendarGrid */
/* Trigger button tokens match DateRangeInput trigger exactly for visual consistency. */

.date-picker {
    position: relative;
    display: inline-flex;
    margin: 0;
}

/* Trigger button */
.date-picker-trigger {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: var(--space-2);
    padding: var(--space-2) var(--space-3);
    background-color: var(--bg-surface);
    border: var(--border-width-1) solid var(--border-default);
    border-radius: var(--border-radius-md);
    cursor: pointer;
    font: inherit;
    font-family: var(--font-family-sans);
    font-size: var(--text-sm);
    color: var(--text-body);
    transition: all var(--duration-150) var(--easing-out);
    white-space: nowrap;
    width: 100%;
}

.date-picker-trigger:hover {
    border-color: var(--border-strong);
}

.date-picker-trigger:focus {
    outline: none;
    border-color: var(--border-focus);
    box-shadow: var(--focus-ring-shadow);
}

.date-picker-trigger:focus-visible {
    outline: none;
    border-color: var(--border-focus);
    box-shadow: var(--focus-ring-shadow);
}

.date-picker-trigger:disabled {
    background-color: var(--bg-muted);
    cursor: not-allowed;
    opacity: 0.7;
}

.date-picker-icon {
    flex-shrink: 0;
    color: var(--text-muted);
}

/* Dropdown panel */
.date-picker-dropdown {
    display: none;
    padding: var(--space-3);
    background: var(--bg-surface);
    border: var(--border-width-1) solid var(--border-subtle);
    border-radius: var(--border-radius-lg);
    box-shadow: var(--shadow-lg);
    z-index: 9999;
}

.date-picker-dropdown.open {
    display: block;
}

/* Size variants */
.date-picker-sm .date-picker-trigger {
    padding: var(--space-1_5) var(--space-2_5);
    font-size: var(--text-xs);
}

.date-picker-lg .date-picker-trigger {
    padding: var(--space-2_5) var(--space-4);
    font-size: var(--text-base);
}

/* Disabled state on wrapper */
.date-picker-disabled {
    pointer-events: none;
    opacity: 0.7;
}
