fast-image-cropper {
    position: fixed;
    z-index: 2000;
}

.w-input {
    display: flex;
    flex-direction: column;
    gap: 4px;
}

.w-input > .help {
    color: var(--color-neutral-700);
    font-size: 14px;
}

.w-input > .error {
    color: var(--color-destructive-700);
    font-size: 14px;
}

.w-image-picker {
    display: grid;
    gap: var(--space-lg);
}

.w-image-picker > .input {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 16px;
}

.w-image-picker > .input > .input-actions {
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    gap: 8px;
}

/* === SCREEN (LG) === */
@media (min-width: 1024px) {
    .w-image-picker {
        grid-template-columns: 1fr 2fr;
    }
    
    .w-image-picker > .input {
        align-items: start;
    }
}

/* AI Input */
.fast-textarea {
    font-family: 'Lato';

    .fast-textarea-skeleton {
        display: flex;
        flex-direction: column;
        gap: 8px;
        min-height: 168px;
        padding: 10px 0px;
    }

    .skeleton-line {
        height: 20px;
        border-radius: 20px;
        background: linear-gradient(
            90deg,
            #f5f5f5 25%,
            #e8e8e8 37%,
            #f5f5f5 63%
        );
        background-size: 300% 100%;
        animation: skeleton-loading 1.8s ease-in-out infinite;
    }

    .skeleton-line.line-1 {
        width: 100%;
    }

    .skeleton-line.line-2 {
        width: 85%;
    }

    .skeleton-line.line-3 {
        width: 95%;
    }

    .skeleton-line.line-4 {
        width: 100%;
    }

    .line-2 {
        animation-delay: 0.2s;
    }

    .line-3 {
        animation-delay: 0.4s;
    }

    .line-4 {
        animation-delay: 0.4s;
    }

    @keyframes skeleton-loading {
        0% {
            background-position: 100% 50%;
        }
        100% {
            background-position: 0 50%;
        }
    }

    .textarea-container {
        background: white;
        border: 1px solid #CCCCCC;
        border-radius: 8px;
        overflow: hidden;
        margin: 0 auto;
    }

    .textarea-area {
        padding: 0 20px;
    }

    .fast-textarea-native {
        width: 100%;
        min-height: 168px;
        border: none;
        outline: none;
        font-size: 16px;
        line-height: 1.5;
        resize: none;
        padding: 12px 0;
        font-family: inherit;
        color: #1f2937;
    }

    .button-row {
        display: flex;
        justify-content: flex-end;
    }

    .generate-btn {
        background: #FFEEF6;
        color: #FA4094;
        border: none;
        padding: 10px 24px;
        border-radius: 0px 0px 4px 4px;
        font-size: 14px;
        font-weight: 700;
        cursor: pointer;
        display: flex;
        align-items: center;
        justify-content: center;
        gap: 6px;
        min-width: 340px;
    }

    .generate-btn:disabled {
        background: #F5F5F5;
        color: #A1A1AA;
        cursor: not-allowed;
    }

    .generate-btn:disabled svg path {
        stroke: #A1A1AA;
    }

    .fast-textarea-footer {
        margin: 8px auto 0;
        display: flex;
        justify-content: space-between;
        align-items: center;
        font-size: 14px;
        color: #3F3F46;
    }

    .fast-textarea-counter {
        display: flex;
        align-items: center;
        gap: 2px;
    }

    .fast-textarea-counter-text {
        color: #000;
        font-weight: 700;
    }

    @media (max-width: 767px) {
        .button-row {
            justify-content: stretch;
        }

        .generate-btn {
            width: 100%;
            justify-content: center;
        }
    }
}