/* =========================================================
   GOR PRODUCT ADMIN – FORMS
   Inputs, Selects, Textareas, Labels, Fokus-Effekte
   ========================================================= */

/* ---------------------------------------------------------
   FORM GROUP
   --------------------------------------------------------- */
.form-group {
    display: flex;
    flex-direction: column;
    margin-bottom: 16px;
}

.form-group label {
    margin-bottom: 6px;
    font-size: 14px;
    color: var(--color-text-dim);
}

/* ---------------------------------------------------------
   INPUTS / SELECTS / TEXTAREAS
   --------------------------------------------------------- */
input,
select,
textarea {
    width: 100%;
    padding: 10px 12px;
    border-radius: var(--radius);
    border: 1px solid var(--color-border);
    background: rgba(255, 255, 255, 0.06);
    color: var(--color-text);
    font-size: 14px;
    transition: 0.2s ease;
}

/* Hover */
input:hover,
select:hover,
textarea:hover {
    background: rgba(255, 255, 255, 0.09);
}

/* Fokus */
input:focus,
select:focus,
textarea:focus {
    outline: none;
    border-color: var(--color-primary);
    box-shadow: var(--glow-primary);
}

/* ---------------------------------------------------------
   TEXTAREA
   --------------------------------------------------------- */
textarea {
    resize: vertical;
    min-height: 80px;
}

/* ---------------------------------------------------------
   SELECT DROPDOWN
   --------------------------------------------------------- */
select {
    appearance: none;
    background-image: linear-gradient(45deg, transparent 50%, var(--color-primary) 50%),
                      linear-gradient(135deg, var(--color-primary) 50%, transparent 50%);
    background-position: calc(100% - 18px) calc(50% - 3px),
                         calc(100% - 12px) calc(50% - 3px);
    background-size: 6px 6px, 6px 6px;
    background-repeat: no-repeat;
    cursor: pointer;
}

/* ---------------------------------------------------------
   ERROR STATE
   --------------------------------------------------------- */
.input-error {
    border-color: var(--color-danger) !important;
    box-shadow: var(--glow-danger) !important;
}

.error-text {
    color: var(--color-danger);
    font-size: 12px;
    margin-top: -10px;
    margin-bottom: 10px;
}

/* ---------------------------------------------------------
   DISABLED STATE
   --------------------------------------------------------- */
input:disabled,
select:disabled,
textarea:disabled {
    opacity: 0.5;
    cursor: not-allowed;
}

/* ---------------------------------------------------------
   INLINE INPUTS (z.B. Preis + Währung)
   --------------------------------------------------------- */
.input-inline {
    display: flex;
    gap: 10px;
}

.input-inline > * {
    flex: 1;
}

/* ---------------------------------------------------------
   FILE INPUT
   --------------------------------------------------------- */
input[type="file"] {
    padding: 8px;
    background: rgba(255, 255, 255, 0.04);
    border: 1px dashed var(--color-border);
    cursor: pointer;
}

input[type="file"]:hover {
    background: rgba(255, 255, 255, 0.08);
}

/* ---------------------------------------------------------
   CHECKBOXES / RADIO
   --------------------------------------------------------- */
input[type="checkbox"],
input[type="radio"] {
    width: auto;
    margin-right: 6px;
    accent-color: var(--color-primary);
}
