/* Modern Text Input Styles - Standard Compact */
/* Common styling for text inputs and textareas */
input[type="text"],
input[type="email"],
input[type="password"],
input[type="search"],
input[type="url"],
input[type="tel"],
textarea {
    display: block;
    width: 100%;
    height: 28px !important;
    /* Increased to match standard buttons */
    min-height: 28px !important;
    padding: 4px 8px !important;
    /* Adjusted padding */
    font-size: 12px !important;
    /* Slightly larger font */
    font-family: inherit;
    line-height: normal !important;
    color: var(--text, #e6edf3);
    background-color: var(--panel2, #262626);
    background-clip: padding-box;
    border: 1px solid var(--border-inner, #404040);
    border-radius: 4px;
    transition: all 0.2s cubic-bezier(0.4, 0, 0.2, 1);
    appearance: none;
    -webkit-appearance: none;
    box-sizing: border-box !important;
}

/* Textarea needs more height */
textarea {
    resize: vertical;
    height: auto !important;
    min-height: 60px !important;
    padding: 6px !important;
}

/* Hover State */
input[type="text"]:hover,
input[type="email"]:hover,
input[type="password"]:hover,
input[type="search"]:hover,
input[type="url"]:hover,
input[type="tel"]:hover,
textarea:hover {
    border-color: var(--accent, #fab387);
    background-color: #2a2a2a;
}

/* Focus State */
input[type="text"]:focus,
input[type="email"]:focus,
input[type="password"]:focus,
input[type="search"]:focus,
input[type="url"]:focus,
input[type="tel"]:focus,
textarea:focus {
    color: var(--text, #e6edf3);
    background-color: var(--panel2, #262626);
    border-color: var(--accent, #fab387);
    outline: 0;
    box-shadow: 0 0 0 2px color-mix(in srgb, var(--accent) 15%, transparent);
}

/* Placeholder */
input[type="text"]::placeholder,
input[type="email"]::placeholder,
input[type="password"]::placeholder,
input[type="search"]::placeholder,
input[type="url"]::placeholder,
textarea::placeholder {
    color: var(--muted, #b3b3b3);
    opacity: 0.6;
}

/* Disabled State */
input[type="text"]:disabled,
input[type="email"]:disabled,
textarea:disabled {
    pointer-events: none;
    background-color: #1a1a1a;
    border-color: rgba(255, 255, 255, 0.05);
    opacity: 0.6;
}

/* Color input */
input[type="color"] {
    -webkit-appearance: none;
    border: none;
    padding: 0 !important;
    width: 28px !important;
    /* Match height */
    height: 28px !important;
    border-radius: 4px;
    overflow: hidden;
    cursor: pointer;
}

input[type="color"]::-webkit-color-swatch-wrapper {
    padding: 0;
}

input[type="color"]::-webkit-color-swatch {
    border: 1px solid var(--border-inner);
    border-radius: 4px;
}

/* Input Action Wrapper (Button inside Input) */
.input-action-wrap {
    position: relative;
    display: flex;
    width: 100%;
}

.input-action-wrap input {
    padding-right: 30px !important;
    /* More space for button */
}

.input-action-wrap .input-action-btn {
    position: absolute;
    right: 4px;
    /* Adjusted position */
    top: 50%;
    transform: translateY(-50%) !important;
    width: 20px !important;
    height: 20px !important;
    min-width: 20px !important;
    padding: 0 !important;
    border: none !important;
    background: transparent !important;
    box-shadow: none !important;
    z-index: 2;
    color: var(--muted, #b3b3b3);
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 3px;
}

.input-action-wrap .input-action-btn:hover {
    background: rgba(255, 255, 255, 0.1) !important;
    color: var(--accent, #fab387) !important;
}

.input-action-wrap .input-action-btn i {
    font-size: 11px;
}